AndroidStudio多渠道打包详细讲解

来源:互联网 发布:乐乎亚洲雄风的喜欢 编辑:程序博客网 时间:2024/04/28 21:10

转载请注明出处:http://blog.csdn.net/darling_R/article/details/61925391

如今一款APP一般都会发布到不同的应用市场上来增加推广以及知名度,今天就来说说Android的多渠道打包。
拿友盟来举例说明。
1。首先添加对友盟的依赖:

compile 'com.umeng.analytics:analytics:latest.integration'

在manifest文件里添加meta标签

<meta-data    android:name="UMENG_APPKEY"    android:value="58c6631265b6d67e4800017e" /><!-- 友盟key--><meta-data    android:name="UMENG_CHANNEL"    android:value="${UMENG_CHANNEL_VALUE}" /><!-- 友盟渠道号-->

在UMENG_CHANNEL的value里使用占位符,一遍后面可以方便的动态替换渠道号,如果只发布一个渠道的apk,那么直接就在这里写成固定的就可以了

2。第二步,编写配置文件
前提是你已经生成好签名文件啦
在build.gradle 文件里

 defaultConfig {        applicationId "com.yh.okhttpdemo2"        minSdkVersion 15        targetSdkVersion 25        versionCode 1        versionName "1.0"        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"        multiDexEnabled true  //突破应用方法数65535的限制        //默认渠道号,比如说就叫umeng        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "umeng"]    }     //添加签名配置文件    signingConfigs {        debug {            keyAlias 'xiaohei'            keyPassword '123456'            storeFile file('E:/workspace/studio/OkHttpDemo2/app/tests.jks')            storePassword '123456'        }        //为release包添加签名配置        release {            keyAlias "xiaohei"            keyPassword "123456"            storeFile file("E:/workspace/studio/OkHttpDemo2/app/tests.jks")            storePassword "123456"        }    }    buildTypes {        release {            minifyEnabled false //是否启用混淆            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'            signingConfig signingConfigs.release            //指定渠道名字            applicationVariants.all { variant ->                variant.outputs.each { output ->                    def outFile = output.outputFile                    if (outFile != null && outFile.name.endsWith(".apk")) {                        def fileName = "${variant.productFlavors[0].name}" + ".apk"                        output.outputFile = new File(outFile.parent, fileName);                    }                }            }        }    }    productFlavors {        //使用当前的value值替换manifest中的占位符        xiaomi {            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]        }        wandoujia {            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]        }    }

然后就可以在控制台,执行 gradlew assembleReslease,等待执行完毕,会出现BUILD SUCCESS,表示你已经成功了,可以去app\build\outputs\apk 文件夹下查看对应的apk安装包。

另外一种方式:
可以直接在studio窗口上操作,这种方式跟上面那种命令行相比,简单很多,不过感觉没有命令行的逼格高,哈哈哈哈
打开 File–Project Structure

这里写图片描述

如图所示,在右边选择 Signing 可以设置release和debug包的签名文件,选择Flavors,在里面点击左边的“+”添加不同的渠道,设置相关内容即可。

这里写图片描述

最后如下图所示,打包生成apk即可。

这里写图片描述

到此,使用Android Studio进行多渠道打包就结束了。

0 0
原创粉丝点击