androidstudio导入项目工程库及短信验证实现(SMSSDK)

简介: androidstudio导入项目工程库及短信验证实现(SMSSDK) (这只是本人意见,如有不对还请各位小伙伴多多指教 。本人邮箱: 893239524@qq.com)

一.对应用实现短信验证及手机注册

   mob.com 、 https://www.juhe.cn/juhesdk(聚合数据SDK)、BMOB后端云 等官网可看其相关文档学习。

  (本人这里是用mob.com官网的类库实现)


  1.首先在Mob.com官网注册账号,开通需要的服务创建自己的app,

这样就可以得到相应的appkey和app Secret 这在后面的实现代码中的是需要的。


   2.下载相应SDK文件如下:

1b297edc4bee9dc781da624067ccb2d3d9846249

(这是短信验证码对应的SDK,下载完解压)


    3.1在实现的代码是需要调用下载的库中的工具类就需要对下载的文件进行关联:

     (注意:当编译器版本小于2.1时的类库导入方法如下:)

    (1)在自己的项目中app上右键选择 Ppen Module Settings 

cf872664962235f507f2c95450bf299b703c4b28

  选择加号添加刚刚下载的 ShortMessageSDKGUI

 (这里进行关联的方法很多,本人使用eclipse的SDK在androidsrudio中关联在此比较方便)


87056305d1783f09973f28422906e170d41f3c78


  (2).接下来只需要进行关联一下两文件就好了

(上一步实现完成这一步好像会自动实现,点击进入查看便知)

3e2f97c288cbfabed05bd044917f5fbe1fa8dfc5

即在菜单栏中对添加的library进行一下操作:

8b9a7a0ecc8093aebf82f6112edd26bf121bee22

也可以分别右键选择 Ppen Module Settings 进行设置:

右边添加符号对Dependence进行添加

f7741923f82d8f9679ce8a447ac3f93ef3738753



73cdecc6dc6712e806908b58b70ac9802470d835



69a4cd215c1be2da161872f9318e06a576c6db04


  (3)实现到这里就可以对库中的SMSSDK等类及方法进行调用了。


   3.2当编译器(androidstudio)版本大于或等于2.1时的类库导入方法 :


     (1)在app目录新建一个libs的包,将下载的SMSSDK中的 .jar文件和 .aar文件拷贝到libs包中;

     (2)在app下的build.gradle文件下加入下面部分代码:


repositories{
flatDir{
dirs 'libs' //就是你放aar的目录地址
}

}


dependencies{

....

 

compile name:'SMSSDK-2.1.1',ext:'aar'

compile name:'SMSSDKGUI-2.1.1',ext:'aar'

//2.1.1为你下载的 .arr 文件对应的版本号,我这里是2.1.1,此处一定不//带有尖括号如: 

//compile name:'SMSSDKGUI-<2.1.1>',ext:'aar' 是错的

}

(此时就完成了项目库的导入,实现的目的与3.1相同)


   4.实现短信通知还需要在清单文件中设置权限已经一个activity信息:

    (1)添加权限

<!--网络权限-->
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
<uses-permission android:name="android.permission.GET_TASKS"/>


  (2)直接添加一个activity信息在application中

<!--添加一个activity信息-->
<activity android:name="com.mob.tools.MobUIShell"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:windowSoftInputMode="stateHidden|adjustResize"
/>


  (3)回到oncreat()方法中


protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);


//1.初始化sdk APPKEY:是在mob.com官网上注册的appkey
SMSSDK.initSDK(this,APPKEY,APPSECRETE);//也是所注册的APPSECRETE
//2.到清单文件中配置信息 (添加网络相关权限以及一个activity信息)

//对activity_main中的Button实例化

mBtnBindPhone= (Button) findViewById(R.id.btn_bind_phone);

//设置点击事件
mBtnBindPhone .setOnClickListener( new View.OnClickListener() {
@Override public void onClick (View view) {//重写 onClick 方法

            //注册手机号
            RegisterPage registerPage=new RegisterPage();

//注册回调事件
registerPage.setRegisterCallback(new EventHandler(){


//事件完成后

@Override

public void afterEvent ( int event , int result , Object data) {
//判断结果是否已经完成 if (result==SMSSDK. RESULT_COMPLETE ){ //解析完成 //获取数据data

HashMap<String,Object>maps= (HashMap<String, Object>) data;//数据强转


//国家 String country= (String) maps.get( "country" ) ;
//手机号码 String phone= (String) maps.get( "phone" ) ;
submitUserInfo(country , phone) ; //调用提交数据方法
} }
})
;
//显示注册界用下载的inde.xml文档中的show()方法 registerPage.show(MainActivity. this ) ; }
})
;
}



  (4)在Oncreat()方法外新建方法:

//新建提交方法 提交用户信息到服务器在监听中返回结果
public void submitUserInfo(String country,String phone){
Random r=new Random();//获得一个随机数
String uid=Math.abs(r.nextInt())+"";
String nickName="MyApp";
SMSSDK.submitUserInfo(uid,nickName,null,country,phone);
}

本案例详情请参考官方文档: ApiDoc/index.html)---在下载的SMSSDK文件中







目录
相关文章
|
3天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
24 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
26天前
|
Java Android开发
Android 开发获取通知栏权限时会出现两个应用图标
Android 开发获取通知栏权限时会出现两个应用图标
12 0
|
1月前
|
XML 缓存 Android开发
Android开发,使用kotlin学习多媒体功能(详细)
Android开发,使用kotlin学习多媒体功能(详细)
102 0
|
1月前
|
设计模式 人工智能 开发工具
安卓应用开发:构建未来移动体验
【2月更文挑战第17天】 随着智能手机的普及和移动互联网技术的不断进步,安卓应用开发已成为一个热门领域。本文将深入探讨安卓平台的应用开发流程、关键技术以及未来发展趋势。通过分析安卓系统的架构、开发工具和框架,本文旨在为开发者提供全面的技术指导,帮助他们构建高效、创新的移动应用,以满足不断变化的市场需求。
18 1
|
17天前
|
XML 开发工具 Android开发
构建高效的安卓应用:使用Jetpack Compose优化UI开发
【4月更文挑战第7天】 随着Android开发不断进化,开发者面临着提高应用性能与简化UI构建流程的双重挑战。本文将探讨如何使用Jetpack Compose这一现代UI工具包来优化安卓应用的开发流程,并提升用户界面的流畅性与一致性。通过介绍Jetpack Compose的核心概念、与传统方法的区别以及实际集成步骤,我们旨在提供一种高效且可靠的解决方案,以帮助开发者构建响应迅速且用户体验优良的安卓应用。
|
20天前
|
监控 算法 Android开发
安卓应用开发:打造高效启动流程
【4月更文挑战第5天】 在移动应用的世界中,用户的第一印象至关重要。特别是对于安卓应用而言,启动时间是用户体验的关键指标之一。本文将深入探讨如何优化安卓应用的启动流程,从而减少启动时间,提升用户满意度。我们将从分析应用启动流程的各个阶段入手,提出一系列实用的技术策略,包括代码层面的优化、资源加载的管理以及异步初始化等,帮助开发者构建快速响应的安卓应用。