Android集成阿里云一键登录步骤

1、阿里云一键登录文档:

https://help.aliyun.com/document_detail/144231.html

2、以下是我的工具、环境

3、 去控制台下载Demo加压后得到如下内容

 4、复制上面文件到项目libs下

5、在项目build.gradle(:app)文件中引入

implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: [])

 6、在proguard-rules.pro文件处理混淆

-keep public class  R.drawable.authsdk*
-keep public class  R.layout.authsdk*
-keep public class  R.anim.authsdk*
-keep public class  R.id.authsdk*
-keep public class  R.string.authsdk*
-keep public class  R.style.authsdk*
-keep class org.json.** {
   *;
}

7、在AndroidManifest.xml文件处理权限

<uses-permission android:name="android.permission.INTERNET" /> <!-- 网络访问 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- 检查wifi网络状态 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 检查网络状态 -->
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <!-- 切换网络通道 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <!-- 本地信息缓存 -->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <!-- 开关Wi-Fi状态,解决国内机型移动网络权限问题需要 -->

8、给Application节点增加usesCleartextTraffic配置

<application
        android:name=".DemoApplication"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        android:usesCleartextTraffic="true">

9、一些Activity设置

<activity
            android:configChanges="orientation|keyboardHidden|screenSize|uiMode|fontScale"
            android:name=".tools.onekey.OneKeyLoginActivity"
            android:screenOrientation="sensorPortrait"/>
 
        <activity
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:name=".tools.onekey.MessageActivity"
            android:screenOrientation="sensorPortrait"/>
 
        <!--联通电信授权页-->
        <!--如果不需要使用窗口模式,不要使用authsdk_activity_dialog主题,会出现异常动画-->
        <!--如果需要使用authsdk_activity_dialog主题,则screenOrientation一定不能指定明确的方向,
               比如portrait、sensorPortrait,在8.0的系统上不允许窗口模式指定orientation,会发生crash,需要指定为behind,
               然后在授权页的前一个页面指定具体的orientation--><!--使用弹窗模式必须添加!!!-->
        <activity
            android:name="com.mobile.auth.gatewayauth.LoginAuthActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:exported="false"
            android:theme="@style/authsdk_activity_dialog"
            android:launchMode="singleTop" />
        <!--协议页面webview-->
        <activity
            android:name="com.mobile.auth.gatewayauth.activity.AuthWebVeiwActivity"
            android:configChanges="orientation|keyboardHidden|screenSize"
            android:exported="false"
            android:launchMode="singleTop"
            android:screenOrientation="behind" />

10、请参考下图从下载的Demo中复制粘贴需要的文件

 注意:上图中有需要依赖的drawable、layout文件请根据自己实际业务选择性粘贴、复制。当然也包括:colors.xml、strings.xml、styles.xml文件。

11、去阿里云控制台找到对应的AppID_Secret,放置在OnekeyLoginActivity.class文件中

12、启动一键登录页面

Intent pIntent = new Intent(mContext, OneKeyLoginActivity.class);
                pIntent.putExtra(THEME_KEY, 0);
                startActivity(pIntent);

13、该type包含以下几种登陆样式

 

 14、启动效果图如下:

————————————————

版权声明:本文为CSDN博主「Ben_Fade」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Ben_Fade/article/details/125620751


若文章对您有帮助,帮忙点个赞!

0
0
发布时间 2022-11-27 21:11:51
0 条回复(回复会通过微信通知作者)
点击加载更多评论
登录 后再进行评论
(微信扫码即可登录,无需注册)