集成Tinker所需要的问题:
1,复制demo中的build.gradle 修改完成以后出现
Error:(9, 0) Could not get unknown property 'TINKER_VERSION' for object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
<a href="openFile:C:\Users\Quentin\Desktop\WorkSpace\As_WorkSpace\TinkerDeni\app\build.gradle">Open File</a>
该问题是没有在项目下 gradle.properties 里面配置 Tinker版本号 ex: TINKER_VERSION=1.7.3
2,sync后出现
Error:(34, 0) Cause: can’t get git rev, you should add git to system path or just input test value, such as ‘testTinkerId’
Open File
无法获取到testTinkerId ,
解决:不使用git的版本号作为tinkerId,改为使用versionName http://blog.csdn.net/namepeng/article/details/53099275
3,
Error:A problem occurred configuring project ‘:app’.
Tinker does not support instant run mode, please trigger build by assembleDebug or disable instant run in ‘File->Settings…’.
意思是说Tinker不支持 install run 模式,请手动 build assembleDebug 或者把 install run 模式禁用掉。
gradle assembleDebug
apk路径:C:\Users\Quentin\Desktop\WorkSpace\As_WorkSpace\TinkerDeni\app\build\bakApk
gradle tinkerPatchDebug
生成apk 路径 :
C:\Users\Quentin\Desktop\WorkSpace\As_WorkSpace\TinkerDeni\app\build\outputs\tinkerPatch\debug\patch_signed_7zip.apk
另外一种方式:点击Android studio 右侧的Gradle的标签。生成基础的apk(可生成Debug版本或者正式版本)
生成差异包(同样,可以生成Debug版本或者正式版本,需要两者对应上)
集成步骤 :
1,在项目下的build.gradle 文件 dependencies 中 添加 tinker的依赖
ex:
classpath ('com.tencent.tinker:tinker-patch-gradle-plugin:1.7.7')
2,因为引入Tinker的版本变量所以在gradle.properties中加入 ex:TINKER_VERSION=1.7.7
3,复制tinker官方Demo中的build.gradle文件,覆盖里层的build.gradle,
把重要的东西(如依赖,编译版本等)复制到最新的gradle当中.
a.添加自己原本需要的依赖
b.更改自己的安卓相应版本和一些其他信息
c.配置自己的签名
异步出现错误,修改tinkerId,改为使用versionName
return android.defaultConfig.versionName
4,复制tinker官方Demo中的所有文件
5,修改SampleApplicationLike上方Application为自己本地的注释,先写一个名字,运行之后会自己出现,报错不用管
添加官方Demo中提供的service服务
6,添加读写权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>