AndroidStudio一个工程打包多个不同包名的APK实例详解-创新互联

公司最近有个特别的需求,同一套代码,稍做修改(如包名不一样,图标不一样,应用名不一样等),编译出几个不同的应用。刚好用AS重构完项目,在网上查阅了一些资料,终于搞定!!在这记录一下。

创新互联于2013年成立,是专业互联网技术服务公司,拥有项目成都网站建设、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元莲池做网站,已为上家服务,为莲池各地企业和个人服务,联系电话:18982081108

AS主要是利用gradle来实现这个需求的,具体做法如下:

修改app的build.gradle文件

假设我们同一套代码编译2个app:app1和app2

android {
 ...
 productFlavors {
  // app1
  app1 {
   // 设置applicationId(这里很重要,两个相同applicationId的apk不同同时安装在同一台Android手机中)
   applicationId "com.johan.demo"
   // 自动生成@string/app_name为demo
   resValue "string","app_name","demo"
   // 定义app_icon字段,在AndroidManifest.xml文件中用到
   manifestPlaceholders = [app_icon : "@mipmap/ic_launcher"]
  }
  // app2
  app2 {
   // 解释同app1
   applicationId "com.johan.demo1"
   resValue "string","app_name","demo1"
   manifestPlaceholders = [app_icon : "@mipmap/ic_launcher1"]
  }
 }
 lintOptions {
  checkReleaseBuilds false
  abortOnError false
 }
}

名称栏目:AndroidStudio一个工程打包多个不同包名的APK实例详解-创新互联
分享路径:http://abwzjs.com/article/cdecge.html