定义Application类,编写onCreate方法,启动服务。
说明
建议将崩溃分析服务的SDK初始化代码段,放在所有业务代码之前,确保App在启动时,优先加载崩溃分析服务,保障后续崩溃的信息,可以即时获取并上传至控制台。public class MyApplication extends Application {
@Override
public void onCreate() {
initHa();
}
private void initHa() {
AliHaConfig config = new AliHaConfig();
config.appKey = "xxxxxxxx";
config.appVersion = "x.xx";
config.appSecret = "xxxxxxxxxxxx";
config.channel = "mqc_test";
config.userNick = null;
config.application = this;
config.context = getApplicationContext();
config.isAliyunos = false;
//启动CrashReporter
AliHaAdapter.getInstance().addPlugin(Plugin.crashreporter);
AliHaAdapter.getInstance().start(config);
}
}
配置说明如下:参数说明appKey用于指定App的AppKey。
【数据类型】字符串
【如何获取】参见:
【是否必选】是
【是否可为空】否
【默认值】无
appVersion用于设置App的版本号。
【数据类型】字符串
【格式要求】自定义
【取值范围】任意长度。
说明
该参数值将在控制台显示为下拉列表选项,建议短小凝练。
【是否必选】是
【是否可为空】否
【默认值】无
【大小写敏感】是。例如,vx.x和Vx.x不是一个版本。
【字符类型】英文大小写、数字。
说明
不支持中文字符、特殊字符。
appSecret用于指定App的AppSecret。
【数据类型】字符串
【如何获取】参见:
【是否必选】是
【是否可为空】否
【默认值】无
channel用于设置渠道标识,上报至服务端,进行渠道区分。
【数据类型】字符串
【取值范围】任意长度
【是否必选】否
【是否可为空】是
【默认值】无
【字符类型】英文大小写、数字。
说明
不支持中文字符、特殊字符。
userNick用于设置用户昵称,上报至服务端,进行用户区分。后续可能依据该参数,进行数据检索。
【数据类型】字符串
【取值范围】任意长度
【是否必选】否
【是否可为空】是
【默认值】无
【字符类型】英文大小写、数字。
说明
不支持中文字符、特殊字符。
【命名规范】自定义
application用于指定本应用。注意:不能指向其他应用。
【数据类型】对象
【是否必选】是
【是否可为空】否
【默认值】无
context用于指定App的上下文对象,设置getApplicationContext();即可。
【数据类型】对象
【是否必选】是
【是否可为空】否
【默认值】无
isAliyunos用于判断App所在平台是否为YunOS。
【数据类型】布尔型
【取值范围】false/true
【是否必选】否
【是否可为空】是
【默认值】false
注意
为避免在日志中泄漏参数appkey/appsecret或App运行过程中产生的数据,建议线上版本关闭SDK调试日志。
由于所有用户使用统一的SDK接入,在接入过程中需要在代码中设置appkey/appsecret参数,而此类参数与计量计费密切相关,为防止恶意反编译获取参数造成信息泄漏,建议您开启混淆,并进行App加固后再发布上线。