Android Studio 多渠道打包之友盟打包

来源:互联网 发布:linux下查看mysql版本 编辑:程序博客网 时间:2024/05/18 00:28

      单一打包比较麻烦需要进行多次重复的打包,在此推荐可以更高效,更安全的多渠道打包方式--------友盟多渠道打包

下面是具体步骤介绍:

1.配置清单文件

 

        代码如下:

<meta-data
    android:name="UMENG_CHANNEL"
    android:value="${UMENG_CHANNEL_VALUE}"
    
/>

2.Moldule的build.Gradle配置文件

 

                 代码如下

//设置APK的渠道信息
productFlavors{
    wandoujia{}              //渠道1

Anzhuoshichang{}         //渠道2

360shichang{}             //渠道3

91zhushou{}               //渠道4,可以任意添加




}
//分别进行打包,固定格式
productFlavors.all { flavor ->
    flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
}
//根据渠道自定义apk的名称,自带版本号,渠道名
applicationVariants.all { variant ->
    variant.outputs.each { output ->
        output.outputFile = new File(
                output.outputFile.parent,
                "duoqudaopackage-${variant.buildType.name}-${defaultConfig.versionName}-${variant.productFlavors[0].name}.apk".toLowerCase())
    }
}

3java代码中设置获取渠道的标识,发送服务器的逻辑代码(吐司代替)


 

 

                         

       代码如下(全部代码)

public classMainActivity extends AppCompatActivity {

    @Override
    protected voidonCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
         String Channel=getChannel();
        Toast.makeText(this, Channel, Toast.LENGTH_SHORT).show();
    }
    //获取应用标识固定代码
    
privateString getChannel() {
        try {
            PackageManager pm = getPackageManager();
            ApplicationInfo appInfo = pm.getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
            return appInfo.metaData.getString("UMENG_CHANNEL");
        } catch (PackageManager.NameNotFoundException ignored) {}
        return "";
    }

}

 

 

4.菜单栏”Build”进行渠道打包

 

 

5.新建数字签名(App身份标识),签名密码,别名,别名密码.点击”next”

 

6.选择APK的类型及存储位置

 

7,编译完后,

 

 

8.将APK复制到虚拟机上运行,(本例拖的是anzhuoshichang的渠道)

 

9.拖入渠道为anzuoshichang的APK,查看运行结果是否吐司.

 

10.吐司成功,即多渠道打包成功.

0 0
原创粉丝点击