解決:Bugly發(fā)布熱更新時(shí),提示未匹配到可用應(yīng)用補(bǔ)丁包的App版本

解決:Bugly發(fā)布熱更新時(shí)说搅,提示沒有對(duì)應(yīng)基線版本

在集成bugly熱修復(fù)框架時(shí),按照官方教程虏等,《Bugly Android熱更新使用指南》的bugly配置蜓堕,發(fā)現(xiàn)當(dāng)后期要發(fā)布熱更新時(shí)抛虏,提示"未匹配到可應(yīng)用補(bǔ)丁包的App版本,請(qǐng)確認(rèn)補(bǔ)丁包的基線版本是否已發(fā)布"套才。

image.png

找了很久終于發(fā)現(xiàn)是因?yàn)楣俜绞褂弥改仙?=少了配置項(xiàng)==迂猴,官方教程是這樣的:

apply plugin: 'com.tencent.bugly.tinker-support'

def bakPath = file("${buildDir}/bakApk/")

/**
 * 此處填寫每次構(gòu)建生成的基準(zhǔn)包目錄
 */
def baseApkDir = "app-0208-15-10-00"

/**
 * 對(duì)于插件各參數(shù)的詳細(xì)解析請(qǐng)參考
 */
tinkerSupport {

    // 開啟tinker-support插件,默認(rèn)值true
    enable = true

    // 指定歸檔目錄背伴,默認(rèn)值當(dāng)前module的子目錄tinker
    autoBackupApkDir = "${bakPath}"

    // 是否啟用覆蓋tinkerPatch配置功能沸毁,默認(rèn)值false
    // 開啟后tinkerPatch配置不生效,即無需添加tinkerPatch
    overrideTinkerPatchConfiguration = true

    // 編譯補(bǔ)丁包時(shí)傻寂,必需指定基線版本的apk息尺,默認(rèn)值為空
    // 如果為空,則表示不是進(jìn)行補(bǔ)丁包的編譯
    // @{link tinkerPatch.oldApk }
    baseApk = "${bakPath}/${baseApkDir}/app-release.apk"

    // 對(duì)應(yīng)tinker插件applyMapping
    baseApkProguardMapping = "${bakPath}/${baseApkDir}/app-release-mapping.txt"

    // 對(duì)應(yīng)tinker插件applyResourceMapping
    baseApkResourceMapping = "${bakPath}/${baseApkDir}/app-release-R.txt"

    // 構(gòu)建基準(zhǔn)包和補(bǔ)丁包都要指定不同的tinkerId疾掰,并且必須保證唯一性
    tinkerId = "base-1.0.1"

    // 構(gòu)建多渠道補(bǔ)丁時(shí)使用
    // buildAllFlavorsDir = "${bakPath}/${baseApkDir}"

    // 是否開啟反射Application模式
    enableProxyApplication = false

}

/**
 * 一般來說,我們無需對(duì)下面的參數(shù)做任何的修改
 * 對(duì)于各參數(shù)的詳細(xì)介紹請(qǐng)參考:
 * https://github.com/Tencent/tinker/wiki/Tinker-%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97
 */
tinkerPatch {
    //oldApk ="${bakPath}/${appName}/app-release.apk"
    ignoreWarning = false
    useSign = true
    dex {
        dexMode = "jar"
        pattern = ["classes*.dex"]
        loader = []
    }
    lib {
        pattern = ["lib/*/*.so"]
    }

    res {
        pattern = ["res/*", "r/*", "assets/*", "resources.arsc", "AndroidManifest.xml"]
        ignoreChange = []
        largeModSize = 100
    }

    packageConfig {
    }
    sevenZip {
        zipArtifact = "com.tencent.mm:SevenZip:1.1.10"
//        path = "/usr/local/bin/7za"
    }
    buildConfig {
        keepDexApply = false
        //tinkerId = "1.0.1-base"
        //applyMapping = "${bakPath}/${appName}/app-release-mapping.txt" //  可選搂誉,設(shè)置mapping文件,建議保持舊apk的proguard混淆方式
        //applyResourceMapping = "${bakPath}/${appName}/app-release-R.txt" // 可選静檬,設(shè)置R.txt文件炭懊,通過舊apk文件保持ResId的分配
    }
}

正確的應(yīng)該是:

apply plugin: 'com.tencent.bugly.tinker-support'

def bakPath = file("${buildDir}/bakApk/")

/**
 * 此處填寫每次構(gòu)建生成的基準(zhǔn)包目錄
 */
def baseApkDir = "app-0208-15-10-00"

/**
 * 對(duì)于插件各參數(shù)的詳細(xì)解析請(qǐng)參考
 */
tinkerSupport {

    // 開啟tinker-support插件,默認(rèn)值true
    enable = true

    // tinkerEnable功能開關(guān)
    tinkerEnable = true

    // 指定歸檔目錄拂檩,默認(rèn)值當(dāng)前module的子目錄tinker
    autoBackupApkDir = "${bakPath}"

    // 是否啟用覆蓋tinkerPatch配置功能侮腹,默認(rèn)值false
    // 開啟后tinkerPatch配置不生效,即無需添加tinkerPatch
    overrideTinkerPatchConfiguration = true

    // 編譯補(bǔ)丁包時(shí)稻励,必需指定基線版本的apk父阻,默認(rèn)值為空
    // 如果為空,則表示不是進(jìn)行補(bǔ)丁包的編譯
    // @{link tinkerPatch.oldApk }
    baseApk =  "${bakPath}/${baseApkDir}/app-release.apk"

    // 對(duì)應(yīng)tinker插件applyMapping
    baseApkProguardMapping = "${bakPath}/${baseApkDir}/app-release-mapping.txt"

    // 對(duì)應(yīng)tinker插件applyResourceMapping
    baseApkResourceMapping = "${bakPath}/${baseApkDir}/app-release-R.txt"

    // 構(gòu)建基準(zhǔn)包跟補(bǔ)丁包都要修改tinkerId望抽,主要用于區(qū)分
    tinkerId = "base-1.0.1"

    // 打多渠道補(bǔ)丁時(shí)指定目錄
//    buildAllFlavorsDir = "${bakPath}/${baseApkDir}"

    enableProxyApplication = true

}

/**
 * 一般來說,我們無需對(duì)下面的參數(shù)做任何的修改
 * 對(duì)于各參數(shù)的詳細(xì)介紹請(qǐng)參考:
 * https://github.com/Tencent/tinker/wiki/Tinker-%E6%8E%A5%E5%85%A5%E6%8C%87%E5%8D%97
 */
tinkerPatch {
    tinkerEnable = true
    ignoreWarning = false
    useSign = true
    dex {
        dexMode = "jar"
        pattern = ["classes*.dex"]
        loader = []
    }
    lib {
        pattern = ["lib/*/*.so"]
    }

    res {
        pattern = ["res/*", "r/*", "assets/*", "resources.arsc", "AndroidManifest.xml"]
        ignoreChange = []
        largeModSize = 100
    }

    packageConfig {
    }
    sevenZip {
        zipArtifact = "com.tencent.mm:SevenZip:1.1.10"
//        path = "/usr/local/bin/7za"
    }
    buildConfig {
        keepDexApply = false
//      tinkerId = "base-2.0.1"
    }
}

==注意官方教程是少了這個(gè):==

// tinkerEnable功能開關(guān)
    tinkerEnable = true

另外加矛,一般我們的MyApplication都不會(huì)直接繼承自bugly要求的TinkerApplication,而是在自己的MyApplication中配置相關(guān)項(xiàng)煤篙,所以還需==注意==:

enableProxyApplication = true

其他方面按照官方指南來就好啦~~~~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末荒椭,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子舰蟆,更是在濱河造成了極大的恐慌趣惠,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,639評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件身害,死亡現(xiàn)場離奇詭異味悄,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)塌鸯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門侍瑟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事涨颜》丫拢” “怎么了?”我有些...
    開封第一講書人閱讀 157,221評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵庭瑰,是天一觀的道長星持。 經(jīng)常有香客問我,道長弹灭,這世上最難降的妖魔是什么督暂? 我笑而不...
    開封第一講書人閱讀 56,474評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮穷吮,結(jié)果婚禮上逻翁,老公的妹妹穿的比我還像新娘。我一直安慰自己捡鱼,他們只是感情好八回,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著驾诈,像睡著了一般缠诅。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上翘鸭,一...
    開封第一講書人閱讀 49,816評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音戳葵,去河邊找鬼就乓。 笑死,一個(gè)胖子當(dāng)著我的面吹牛拱烁,可吹牛的內(nèi)容都是我干的生蚁。 我是一名探鬼主播,決...
    沈念sama閱讀 38,957評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼戏自,長吁一口氣:“原來是場噩夢啊……” “哼邦投!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起擅笔,我...
    開封第一講書人閱讀 37,718評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤志衣,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后猛们,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體念脯,經(jīng)...
    沈念sama閱讀 44,176評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評(píng)論 2 327
  • 正文 我和宋清朗相戀三年弯淘,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了绿店。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,646評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖假勿,靈堂內(nèi)的尸體忽然破棺而出借嗽,到底是詐尸還是另有隱情,我是刑警寧澤转培,帶...
    沈念sama閱讀 34,322評(píng)論 4 330
  • 正文 年R本政府宣布恶导,位于F島的核電站,受9級(jí)特大地震影響堡距,放射性物質(zhì)發(fā)生泄漏甲锡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評(píng)論 3 313
  • 文/蒙蒙 一羽戒、第九天 我趴在偏房一處隱蔽的房頂上張望缤沦。 院中可真熱鬧,春花似錦易稠、人聲如沸缸废。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽企量。三九已至,卻和暖如春亡电,著一層夾襖步出監(jiān)牢的瞬間届巩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評(píng)論 1 266
  • 我被黑心中介騙來泰國打工份乒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留恕汇,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,358評(píng)論 2 360
  • 正文 我出身青樓或辖,卻偏偏與公主長得像瘾英,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子颂暇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容