Android-Studio集成步骤
更新时间:2024-09-25
获取sdk并解压
SDK下载地址:https://cloud.baidu.com/doc/SPP/s/qjwvxj91t
带有厂商通道的sdk:请联系商务邮箱spp_support@baidu.com获取SDK
拿到SDK后进行解压。
导入SDK
创建一个新的Module,导入SDK中取出的AAR文件,这里以techain*.aar为例,module取名:techain(名称任意,这里只是举例),如下图所示:
在自己项目的build.gradle中添加依赖,引入techain依赖,然后sync。
dependencies {
...
compile project(':techain')
...
}
so包相关:aar包中包含了armeabi,armeabi-v7a,arm64-v8a,x86的so包,如果集成的App自身兼容的abi种类少于本aar,应当在build.gradle文件中,加入ndk的abiFilter配置,选定本app支持的abi,以防止引入全部4种abi的so导致在指定abi上缺失其他so文件。
defaultConfig {
...
ndk { abiFilter "armeabi" }
...
}
AndroidManifest配置
开发者可以按照需求,添加如下权限配置
<!-- 可选权限,慧推地理围栏功能需要的权限,如果要使用地理围栏功能,开发者需要主动配置并申请以下权限 ,如果不使用地理围栏,可以不配置以下权限,慧推SDK不会强制获取地理位置信息-->
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- 必选权限,消息推送需要的权限 -->
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<!-- 慧推SDK进行多进程判断需要的权限,慧推SDK不会采集后台应用信息 -->
<uses-permission android:name="android.permission.GET_TASKS" />
<!-- 华为和荣耀设备,收到通知消息后展示应用角标信息使用 -->
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE" />
<uses-permission android:name="com.hihonor.android.launcher.permission.CHANGE_BADGE" />
防止混淆配置
集成方工程如存在资源混淆情况,请根据自身配置对协同SDK内资源进行keep,具体如下:
1.需要keep的资源文件:
file n_b_s0.xml
file n_b_s1.xml
file n_b_s2.xml
file n_b_s3.xml
file a_a.xml
file b_b.png
2.需要keep的a_a.xml内的ID值
id BD_TranslucentTheme
id b_b
id a_a
id n_b_s0
id n_b_s1
id n_b_s2
id n_b_s3
id push_custom_notification_layout
id style_0
id notification_pic_0
id notification_timer_0
id notification_title_0
id notification_text_0
id style_1
id notification_pic_1
id notification_timer_1
id notification_title_1
id notification_text_1
id style_2
id notification_pic_2
id style_3
id notification_pic_3
id notification_btn_3
id notification_title_3
id notification_text_3
id style_4
id notification_pic_4
id notification_timer_4
id notification_title_4
id notification_text_4
id notification_lbtn_4
id notification_rbtn_4
id style_5
id notification_pic_5
id notification_title_5
id notification_progress_5