扫码登录-拓展功能
# 1 概述
扫码登录适用于App
授权应用PC
端登录,接入后即可支持在pc端扫码登陆
# 2 前置条件
接入开始前请确保已完成以下条件:
已经导入了USDK资源。
下载以下扫码登录相关sdk资源并集成到工程
- 扫码登录SDK相关资源下载地址: 点击下载 (opens new window)
以下是资源目录结构说明:
- /
- libs/
依赖库 - sdk-scan-1.0.0.aar
- libs/
# 3 接入前准备
# 3.1 Android Studio 混淆配置
若游戏启用了混淆机制,游戏混淆发布前,务必添加以下字段到混淆文件 proguard-rules.pro
中
-keep class com.hu.** {*;}
-keep class org.opencv.** {*;}
-keep class com.king.** {*;}
1
2
3
2
3
# 3.2 扫码库配置
将下载到的ZIP文件解压,会得到 .aar
文件,将文件复制到 libs
目录并在 build.gradle
下配置引用即可,示例如下
api fileTree(include: ['*.aar'], dir: 'libs')
1
# 3.3 ABI过滤(可选,但需要重点看一下)
需要根据游戏适配的架构进行配置,如果游戏本身支持'armeabi-v7a'
, 'arm64-v8a'
, 'x86'
, 'x86_64'
这四种架构,那不用进行ndk配置,可以略过3.3
build.gradle
里面的 android{} 中设置支持的 SO 库架构(可选配置,默认包含 'armeabi-v7a'
, 'arm64-v8a'
, 'x86'
, 'x86_64'
架构)
defaultConfig {
//...
ndk {
//设置支持的 SO 库架构(开发者可以根据需要,选择一个或多个平台的 so)
abiFilters 'armeabi-v7a' , 'arm64-v8a', 'x86', 'x86_64'
//如果游戏本身只支持arm64-v8a, armeabi-v7a 那么配置如下
//abiFilters 'armeabi-v7a' , 'arm64-v8a'
}
}
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 4 接入开始
场景介绍
游戏调起扫描二维码的页面,扫码完成后,游戏监听的网页链接会返回相应的登录结果
调用方法
public void launchBarcodeScanner(Activity activity, String extraParams)
1
调用示例
HeroSdk.getInstance().launchBarcodeScanner(activity, "游戏的透传参数");
1
# 5 jar 文件升级到 aar 升级指南
- 删除 libs目录下 core-3.3.3.jar 与 hu_zxing.jar文件
- 删除 res/drawable 目录下的zx_ic_back.png 与 zx_ic_photo.png
- 删除 res/layout 目录下的 zx_activity_capture.xml
- 删除 res/raw 目录下的 zx_beep.ogg
- 删除 res/values 目录下的 zx_colors.xml 与 zx_strings.xml
- 删除以下扫码之前需要的manifest配置
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<activity
android:name="com.hu.zxlib.base.ScannerActivity"
android:configChanges="orientation|screenSize"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustPan|stateHidden" />
<activity
android:name="com.hu.scan.permission.PermissionActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:windowSoftInputMode="stateHidden|stateAlwaysHidden" />
<activity
android:name="com.ultrasdk.activity.HuslActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
本文档对解决你的问题有所帮助?
文档反馈