移动分析依赖客户端 SDK 来进行埋点,收集用户行为以及 App 性能等相关数据生成日志并上报到服务端。根据 mPaaS 客户端与服务端协定的埋点数据格式,服务端从客户端上传的埋点日志中提取有效数据,从而实现对客户端各项指标的监控分析。
本文介绍如何快速将 MAS 组件接入到 Android 客户端。目前,MAS 组件支持 原生 AAR 接入和 组件化接入 两种接入方式。
完整的接入过程分为以下六步:
前置条件
若采用原生 AAR 方式接入,需要先 将 mPaaS 添加到项目。
若采用组件化方式接入,需要先完成 组件化接入流程。
添加 SDK
原生 AAR 方式
参考 管理组件依赖(原生 AAR)AAR 组件管理,通过 组件管理(AAR) 在工程中安装 日志(LOGGING)组件。
组件化方式
在 Portal 和 Bundle 工程中通过 组件管理 安装 日志(LOGGING) 组件。更多信息,参考 接入流程添加组件依赖。
初始化 mPaaS
原生 AAR 接入
如果您使用原生 AAR 接入方式,则需要初始化 mPaaS。
在 Application
对象中添加以下代码:
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// mPaaS 初始化
MP.init(this);
}
}
详情请参考:初始化 mPaaS。
组件化接入
使用组件化接入方式,mPaaS 框架会自动初始化,您无需操作。
添加配置
上传日志
上传日志需要访问网络,请在 AndroidManifest
中声明以下权限。
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
日志诊断
如果您需要使用 日志诊断 功能,请在 AndroidManifest
中声明以下权限,并在 Android 6.0+ 设备上运行时动态申请该权限。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
诊断日志会保存到设备的 SD 卡上,如果未申请该权限,可能无法获取诊断日志。
设置渠道号
如果您需要在控制台中区分不同渠道的 apk 的数据,您可以为 apk 设置渠道号。
在工程的 assets
目录下创建 channel.config
文件,修改 channel_id
的值即可。
# 标识当前的发布渠道
channel_id=alipay
如果未创建 channel.config
文件,渠道号默认为 mpaas_default
。
获取 IMEI / IMSI
在低于 Android 10 的系统上,已获得相关权限的情况下默认会获取设备的 IMEI 和 IMSI,如果您需要完全禁止获取这类信息的行为,请在AndroidManifest
中添加以下配置:
<meta-data
android:name="imei.switch"
android:value="off" />
仅在 10.2.3.6 及以上基线生效,添加配置后,移动分析、消息推送、数据同步都将不再获取设备的 IMEI 和 IMSI。
添加日志
SDK 接入完毕后,添加以下日志:
查看本地日志
查看本地日志 了解本地日志信息。
上报日志
将客户端本地文件中的日志同步到日志服务器。参见 上报日志 说明文档了解相关操作。