Android Studio3下多渠道打包遇到的坑

Android Studio3發(fā)布了也有一陣子了。然而,除了偶爾看幾眼外,工作中一直還是用2在做日常的開發(fā)。
又然而,某天手賤沒仔細(xì)看就點(diǎn)了更新,直接就把手頭的2升級到3了。呃,好吧,升級就升級吧。
又然而,原來的項(xiàng)目竟然在Studiou3里直接就不能build了。來來來,看看啥情況。

1.首先是gradle plugin 要3以上,sdk build tools 要26以上了。好吧好吧,你說啥就是啥吧。

2. 然后是Error:All flavors must now belong to a named flavor dimension. 錯誤。

這個主要是說你需要為每個版本構(gòu)建一個或多個flavorDimensions。利用這個就可以打包不同需求的版本。(不打包多個版本的話不會報這個錯)
在主app的build.gradle里面的defaultConfig里加入flavorDimensions屬性,比如這里構(gòu)建demo和Release這兩個維度。
像這樣

defaultConfig {
  targetSdkVersion:***
  minSdkVersion :***
  versionCode:***
  versionName :***
  flavorDimensions "demo","release"
}

3.然后,因?yàn)樾枰嗲来虬?,那么需要在渠道配置里指定dimension參數(shù)。

需要注意的是之前設(shè)置的每個Dimension都要用到哦,比如這樣:

productFlavors {
        _demo {
            dimension "demo"
        }
        _wandoujia {
            dimension "release"
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "_wandoujia"]
        }
}

4.build一下,又爆Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project...的錯。

根據(jù)https://stackoverflow.com/questions/46949622/android-studio-3-0-unable-to-resolve-dependency-for-appdexoptions-compilecla這個帖子。
所有依賴進(jìn)來的庫的build.gradle中必須有和主app的build.gradle里一樣的buildTypes設(shè)置。所以就是把

    buildTypes{
        release {
            ...
        }
        debug {
            ...
        }
    }

里的內(nèi)容在依賴庫的build.gradle里也設(shè)置一下就是了。

5.再build一下,咦,又說不能讀取友盟推送sdk的jar文件了。

看了下具體文件,原來是之前舊版本的jar文件沒法讀取。Studio2的時候?yàn)槊珱]有和我說起這個事呢?
刪除之。

6.再build一下,一切正常了,從此就在Studio3下搬磚了。


關(guān)于的flavorDimensions具體使用,可以參考:配置構(gòu)建變體

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,506評論 19 139
  • Android Studio 3.0 默認(rèn)Gradle版本為4.1,如果你需要手動升級版本的話,記得修改gradl...
    宇行信閱讀 1,733評論 0 0
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,777評論 25 709
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,254評論 6 342
  • 1.form標(biāo)簽用于創(chuàng)建供用戶輸入的 HTML 表單 2.input可以在其中輸入數(shù)據(jù) 3.select創(chuàng)建一個下...
    JustinPenChia閱讀 1,609評論 0 2

友情鏈接更多精彩內(nèi)容