Android Studio多渠道打包之productFlavors
发布于 2022-07-10 23:12:26阅读 1948
我的app目前有两个渠道,Google play和官网,两者最大的差异是Google play对接了内购。所以需要有个方法能把两者区分开来,只有Google play渠道才显示内购相关的界面。这个方法就是打渠道包
配置productFlavors
修改AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.cuiwei.voice">
<application
android:theme="@style/AppTheme">
<meta-data android:name="CHANNEL" android:value="${CHANNEL_VALUE}" />
</application>
</manifest>
修改build.gradle
android {
defaultConfig {
...
//必须要保证所有的flavor 都属于同一个维度
flavorDimensions "default"
}
...
productFlavors {
guanwang {
manifestPlaceholders = [CHANNEL_VALUE: "guanwang"]
}
google {
manifestPlaceholders = [CHANNEL_VALUE: "google"]
}
}
}
指定调试模式使用的渠道
有个问题,上面配置了多个渠道,那调试模式使用的是哪个渠道呢?
其实是可以配置的,如下图
如果你如图切换了渠道没起作用,建议重启一下
Android Studio