多渠道打包配置app差异性

2019-12-21  本文已影响0人  一笑过千山
在开发中我们有时候会遇到一些需求,比如在不同应用市场图标不同,这个问题可以通过配置多渠道打包来实现,同时多渠道打包还可以实现app差异性,比如每个渠道内容不同,界面不同,以此延申可以通过渠道包实现pad版和phone版,或者两个app有一些共性东西,可以在一个项目中开发
<meta-data
            android:name="CHANNEL_ID"
            android:value="${CHANNEL_ID}"/>
 productFlavors {
        huawei {}
        xiaomi {}
        yingyongbao {}
        productFlavors.all {
            flavor -> flavor.manifestPlaceholders = [CHANNEL_ID: name]
        }
    }
 defaultConfig {   
        versionCode 1
        versionName "1.0"
       flavorDimensions "default"
}
image.png
 public String getFlavorChannel(Context context) {
        try {
            PackageManager pm = context.getPackageManager();
            ApplicationInfo appInfo = pm.getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA);
            return appInfo.metaData.getString("CHANNEL_ID");
        } catch (PackageManager.NameNotFoundException ignored) {
        }
        return "";
    }
上一篇 下一篇

猜你喜欢

热点阅读