Tinker整合步驟和整合中所需要的問題
阿新 • • 發佈:2019-01-28
整合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 ,
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"/>