Error:All flavors must now belong to a named flavor dimension. The flavor 'xiaomi' is not assigned to a flavor dimension. Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html
Android studio 3.0上進行多渠道打包時編譯時出現這個錯誤
解決問題參考:https://stackoverflow.com/questions/44105127/android-studio-3-0-flavor-dimension-issue
多渠道打包的細節我就不說了,參考網絡上的,或者我上面的這個鏈接就好,下面給出一下我修改的代碼(如果有其他的改法也希望能多多交流)
flavorDimensions "default"  productFlavors {  kuan {   dimension "default"   manifestPlaceholders = [UMENG_CHANNEL_VALUE: "kuan"]  }  xiaomi {   dimension "default"   manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]  }  qh360 {   dimension "default"   manifestPlaceholders = [UMENG_CHANNEL_VALUE: "qh360"]  }  baidu {   dimension "default"   manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baidu"]  }  wandoujia {   dimension "default"   manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]  }  } 或者:
flavorDimensions "default"  productFlavors {   kuan {dimension "default"}   xiaomi {dimension "default"}   qh360 {dimension "default"}   baidu {dimension "default"}   wandoujia {dimension "default"}  }  productFlavors.all {   flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]  } 然后解決問題之后我又去官網查閱了一下,地址如下:
https://developer.android.com/studio/build/build-variants.html#flavor-dimensions
根據官網說法:
You must assign each product flavor you configure to one of the flavor dimensions.
你必須指定一種 flavor dimensions
	void flavorDimensions(String... dimensions)  
flavorDimensions 后面可以添加多個不同類型的參數例如:
flavorDimensions "api", "mode"
接下來的使用對應起來就好了:
productFlavors {  demo {   // Assigns this product flavor to the "mode" flavor dimension.   dimension "mode"   ...  }  full {   dimension "mode"   ...  }  // Configurations in the "api" product flavors override those in "mode"  // flavors and the defaultConfig {} block. Gradle determines the priority  // between flavor dimensions based on the order in which they appear next  // to the flavorDimensions property above--the first dimension has a higher  // priority than the second, and so on.  minApi24 {   dimension "api"   minSdkVersion '24'   // To ensure the target device receives the version of the app with   // the highest compatible API level, assign version codes in increasing   // value with API level. To learn more about assigning version codes to   // support app updates and uploading to Google Play, read Multiple APK Support   versionCode 30000 + android.defaultConfig.versionCode   versionNameSuffix "-minApi24"   ...  }  minApi23 {   dimension "api"   minSdkVersion '23'   versionCode 20000 + android.defaultConfig.versionCode   versionNameSuffix "-minApi23"   ...  }  minApi21 {   dimension "api"   minSdkVersion '21'   versionCode 10000 + android.defaultConfig.versionCode   versionNameSuffix "-minApi21"   ...  }  } 好了,這就是官方給出的gradle多渠道打包的方式
總結
以上所述是小編給大家介紹的Android studio 3.0上進行多渠道打包遇到的問題小結(超簡潔版),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!
新聞熱點
疑難解答