前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Bugly 热修复踩坑记录

Bugly 热修复踩坑记录

作者头像
萬物並作吾以觀復
发布2019-04-01 15:16:54
1.3K2
发布2019-04-01 15:16:54
举报
文章被收录于专栏:指尖下的Android
代码语言:javascript
复制
2019-03-29 09:38:35.108 435-435/? W/Layer: [Splash Screen com.rzj.zhongshi#0] opaque layer with plane alpha:0.83 cannot be handled by hwcomposer
2019-03-29 09:38:35.116 31808-31808/? W/Tinker.Tinker: tinker patch directory: /data/user/0/com.***.********/tinker
2019-03-29 09:38:35.118 31808-31808/? I/Tinker.Tinker: try to install tinker, isEnable: true, version: 1.9.11
2019-03-29 09:38:35.119 31808-31808/? I/Tinker.TinkerLoadResult: parseTinkerResult loadCode:-2, process name:com.com.***.******** main process:true,
 systemOTA:false, fingerPrint:HUAWEI/DRA-AL00/HWDRA-M:8.1.0/HUAWEIDRA-AL00/1.0.0.160(C00):user/release-keys, oatDir:null, useInterpretMode:false
2019-03-29 09:38:35.120 31808-31808/? W/Tinker.TinkerLoadResult: can't find patch file, is ok, just return
2019-03-29 09:38:35.120 31808-31808/? I/Tinker.DefaultLoadReporter: patch loadReporter onLoadResult: patch load result,
 path:/data/user/0/com.rzj.zhongshi/tinker, code: -2,
 cost: 7ms
2019-03-29 09:38:35.121 31808-31808/? W/Tinker.Tinker: tinker load fail!

这个坑我踩了两天,然后加了 Bugly 内测分发交流群 ( QQ群 429975901 ) ,得到了答案,把 Tinker 的依赖版本降低

代码语言:javascript
复制
// 指定tinker依赖版本(注:应用升级1.3.5版本起,不再内置tinker)
    implementation 'com.tencent.tinker:tinker-android-lib:1.9.9'

Tinker的依赖库版本我之前一直是用最新的,设置为 latest.release ,哪里知道居然还是一个不稳定的版本,就这一个坑卡了两天,期间一直 Google、查 Bugly 文档,下载 Demo 比对,找不到问题,在这吐槽 Bugly 的坑货,不稳定的版本也发布。 集成期间还遇到点小问题,比如 FileProvider 冲突问题

代码语言:javascript
复制
<!-- 兼容安卓 N -->
        <provider
            android:name=".utils.BuglyFileProvider"
            android:authorities="${applicationId}.fileProvider"
            android:exported="false"
            android:grantUriPermissions="true"
            tools:replace="name,authorities,exported,grantUriPermissions">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/provider_paths"
                tools:replace="name,resource" />
        </provider>
代码语言:javascript
复制
import android.support.v4.content.FileProvider;

public class BuglyFileProvider extends FileProvider {
}

因为有其他第三方 SDK 有用到 FileProvider ,但是同样的 android:authorities 会造成冲突,所以新建一个类继承 FileProvider ,如果有用到混淆,要记得 keep 住 supper 库。下一篇博客写不用第三方热修复 SDK 如何实现热修复的全过程及实现原理。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.03.29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档