Tinker熱修復,配置時的坑
首先,配置時我參考的是這一篇: 微信熱修復Tinker使用
和連結中文章中不同的是【我踩過的坑】以下幾點:
配置app.gradle 時,需要tinker庫依賴,還需要:
compile “com.android.support:multidex:1.0.1”
app.gradle 中的 default config 新增:
multiDexEnabled true
,同時新增:dexOptions {
javaMaxHeapSize “2g”
preDexLibraries = false
jumboMode=trueapp.gradle 中的
ignoreWarning=false
,置為ignoreWarning=true
我第一次編譯 tinkerPatchDebug 時耗費四五個小時,還不行,出現了“遠端主機強制關閉了一個現有連線…”。後來把這個引數改了,就很順利了。官方解釋如下:繼承自
DefaultApplicationLike
的類,根本不是Application型別,能使用的生命週期只有onCreate()
,如果需要使用Application,仍需在方法中新增:Application app=getApplication()
大概的一個流程,【好麻煩,千萬別弄錯了】
第一步:執行到手機上,然後取出 build/apk/下的包,放置到配置檔案中,oldApk
第二步:進行程式碼的修改
第三步:執行右側
Gradule
裡的 app/Tasks/tinker/tinkerPatchDebug
第四步:編譯成功後,取出
build/outputs/tinkerPatch/debug/patch_signed_7zip.apk
,即是生成的差異補丁包。將補丁包放入手機中指定的位置。
注意事項:
1. 程式執行如果無誤的話,會在第一次執行時載入補丁包,第二/三/四次執行時會顯示修改後的程式。同時,放入手機中的補丁包會自動刪除。【這才代表找到補丁,並且載入補丁成功】
2. 假設基準包是A,打了補丁a成功後,還想打第二個補丁,就必須將修改後的程式碼(即補丁a想要修復的程式碼)重新作為基準包B,生成第二個補丁b。
如果,仍將A作為基準包,則生成的第二個補丁b,已經打了第一個補丁的程式將無法載入補丁b。
Tinker修復成功的概率很高,也不是100%,所以關於如何打補丁,如何部署補丁,還需要公司內部權衡。
3. 生成的補丁包以.apk
以防被運營商挾持
,Tinker支援任意字尾名。
相關推薦
Tinker熱修復,配置時的坑
首先,配置時我參考的是這一篇: 微信熱修復Tinker使用 和連結中文章中不同的是【我踩過的坑】以下幾點: 配置app.gradle 時,需要tinker庫依賴,還需要: compile “com.android.support:multidex:
bugly整合Tinker熱修復,多渠道打包 簽名
自己記錄一下,對其他人有幫助更好 https://mp.weixin.qq.com/s/1kRTqyF4JC5lLwpxUae9NA (感謝分享) 在這裡面使用的是博主說的第二種方式 快速打渠道包工具(Gradle) walle 然後在git上找到 walle的專案
騰訊Tinker 熱修復 Andriod studio 3.0 配置和整合(三)Bugly整合
騰訊Tinker 熱修復 Andriod studio 3.0 Bugly整合和多渠道補丁管理髮布 本文說明 上一篇我說完了騰訊Tinker 熱修復之多渠道打包,這篇我們來初步瞭解下騰訊Tinker和Bugly結合來做熱修復多渠道補丁管理和整合。(其實在上週我已經整合測試完了dem
騰訊Tinker 熱修復 Andriod studio 3.0 配置和整合(二)多渠道打包和補丁釋出
騰訊Tinker 熱修復 Andriod studio 3.0 多渠道打包和釋出補丁方式推薦 本文說明 在之前我已經分享了Tinker 熱修復的 Andriod studio3.0 初次配置和整合,時隔這麼久來寫一下我對Thinker多渠道打包的理解和記錄,希望對大家有幫助。這篇文
騰訊Tinker 熱修復 Andriod studio 3.0 配置和整合(一)
本文說明 面試的時候經常問我有沒有用過熱修復?用誰的?能說下原理嗎?當時我回答得不好,畢竟以前的專案都沒有用,又不敢裝逼,mmp,但是基本流程還是知道的,所以我們來初探下Tinker 這個熱修復,如果我是Andriod studio 2.3的話,我還不怎麼想寫這個文章,畢竟太多了,沒有
Tinker熱修復接入詳解(入坑並出坑篇)
注:當然一開始要參考Tinker的詳細說明,連結如下: https://github.com/Tencent/tinker/wiki 下面就是我自己一步一步操作,並完成接入Tinker,而且入坑並出坑的過程。 一:android studio自己建立個工程 二:工程的b
Tinker 熱修復 踩坑之路
花了幾個小時進行踩坑,總結一下過程說實話,騰訊的第三方demo從來沒令我們"操心過"。廢話不多數,直接進教程,手把手接入Tinker1、準備工作 Tinker 官網 http://tinkerpatch.com/ 花幾分鐘註冊個賬號 新建一個APP APP名稱建議
springBoot(4)---熱部署,配置文件使用
jin snap html align 如果 true AC imp 讀取 熱部署,配置文件使用 一、熱加載 spring為開發者提供了一個名為spring-boot-devtools的模塊來使Spring Boot應用支持熱部署,提高開發者的開發效率,無需手動
最新微信Tinker 熱修復平臺接入教程(超詳細)
目錄 Tinker接入文件 1 Tinker簡介 1.1Tinker優點 1.2 Tinker缺點 1.Tinker不支援修改AndroidManifest.xml,Tinker不支援新增四大元件(1.9.0支援新增非export的A
[Android]騰訊Tinker熱修復框架簡單使用
前言目前我們所知的熱修復方案有阿里的AndFix、美團的Robust以及QZone的超級補丁方案,還有本篇的Tinker,如何在我們的自開發的軟體上選用合適的方案呢?先看看各家的框架效能對比,在作參考。總體來說:AndFix作為native解決方案,首先面臨的是穩定性與相容性
Tinker熱修復框架接入
Tinker熱修復框架接入 Android現在開發App基本都開始接入熱修復框架,為的就是能夠修復一些線上緊急Bug。熱門的熱修復框架以及對比,網上介紹的也很多,個人而言就用過騰訊的tinker以及阿里的sophix。 騰訊tinkerTinker簡介,根據官方文件接入tinke
Tinker熱修復(gradle接入--成功)
官方的接入指南真的很坑,對於沒有用過AndFix的人來說,可以說是一頭霧水,我到現在也不知道命令列接入的.jar檔案是在哪下載的。這裡講解一下gradle接入,經測試.java檔案可以實現完美接入,命令列接入的BUG完美繞過。(application的設定,和patch
Tinker熱修復 及walle多渠道打包流程
普通打包 1 Constants.isWalleChannel 設定成false 2 不要註釋掉 <meta-data android:name="UMENG_CHANNEL" android:value="${
Tinker 熱修復框架 簡單上手教程
導言 前不久,騰訊推出了”微信小程式”這一概念,對移動原生應用的影響可謂巨大.而幾乎就在同時, 騰訊在GitHub上開源了第一個專案Tinker, 這是一個Android平臺的應用熱修復框架.可以在不重新安裝應用的情況下,對應用的程式碼/庫 /資源進行更
android--------微信 Tinker 熱修復 (一)
什麼是熱修復熱修復補丁(hotfix),又稱為patch,指能夠修復軟體漏洞的一些程式碼,是一種快速、低成本修復產品軟體版本缺陷的方式。熱修復有多種,如:Tinker ,QZone,Andfix, In
Tinker熱修復初探
聽說熱修復已經很久了,但這是第一次嘗試去應用它。所以我對其它各種熱修復也沒什麼瞭解,這裡僅僅記下如何使用Tinker熱修復。 對於Tinker熱修復的介紹和問題這裡也不寫了,因為官方文件已經有了,戳這裡進入這裡只記下如何在自己的專案中使用Tinker熱修復。 步驟一、
Android studio3.0 命令列方式簡單整合騰訊Tinker熱修復外掛
簡介: 關於熱修復的介紹現在網上有很多,所以在此我就不過多BB,此篇部落格的特點有兩個,首先,這是一個針對Android studio3.0使用者的部落格,其次,這裡採用的是命令列的方式,這是方式在工作中並不經常使用,相反,在工作中基本都是使用gradle配置的方式,但是命
關於tinker 熱修復的多渠道打包方式
上篇部落格介紹了tinker 熱修復的接入的問題[http://blog.csdn.net/qq1221jyj/article/details/73743612] 當接入成功後,專案又做了多渠道的東西。難道要一個渠道對應一個補丁包嗎?那哪哪哪 ~~簡直開玩笑。
android Tinker 熱修復 樂固加固後友盟打多渠道包之後的補丁失效
現在的需求是這樣的,我想把這個包用騰訊樂固加固,然後生成多渠道包,希望這個補丁能修復所有這些渠道的包,經過測試,直接操作修復失敗,解決步驟如下: 參考熱修復api文件sdk接入,發現支援加固,處理方
Android Tinker熱修復
應該都遇到過剛上線的app,突然發現一個嚴重的bug需要修復,怎麼辦,以前的做法修改bug,然後重新打包app,測試,發新版本。即使是僅僅改動一行程式碼,也需要這麼繁瑣的操作來修復bug。 後來,出現熱修復技術,使用者在使用過程中不知不覺bug就修復了。