Hotfix接入后提示初始化失败排查步骤:
遇到问题可以先通过常见问题页进行关键字搜索。
首先按照文档进行接入,初始化必须在主进程的Application的onCreate或attachBaseContext的最前面。
检查aar文件生效的设置是否有加,由于SDK中有aar文件,而aar文件和jar文件的依赖稍有差别,需要在gradle中添加如下代码才能生效。
repositories {
flatDir {
'libs'
}
}
检查utdid是否依赖正确,看一下工程中都包含哪些SDK,是否还有阿里系的其他的SDK,如有,先检查下当前使用的SDK是否为比较新的版本,比较老的版本有些依赖包的冲突是解决不了的,比如很老的支付宝SDK,其中utdid规则与现有的不太一样,目前比较新的版本就比较统一,而比较新的版本,只依赖一次utdid包就可以。还有要注意,文档中添加依赖时的exclude(module:’alicloud-android-utdid’)是把utdid过滤掉,需明白exclude的意义。
也可能初始化时报空指针异常,是参数设置的问题,重点注意一下:setEnableDebug为false时,日志显示的很少,大多都关了,这时调试工具也不能应用本地补丁,拉取补丁后对补丁做签名校验,这时可使用自定义的aeskey;setEnableDebug为true时,输出日志以及强制不进行补丁签名校验,这时补丁可不签名,不用自定义的aeskey。
如果采用稳健加入,报
java.lang.RuntimeException: abandon initialization: callRealappAtatch
相关的异常,请检查RealApplication的构造方法是否被混淆,需要keep构造方法。可以直接查看日志进行排查,上述问题在日志中都有体现,日志可过滤Sophix。
若上述步骤仍未能定位问题,可以询问技术支持解决:技术支持。