Android修行手册 – 一套源码发布多个apk(多包名,多名称,多Logo)
| Unity3D特效百例 | 案例项目实战源码 | Android-Unity实战问题汇总 |
|---|---|---|
| 游戏脚本-辅助自动化 | Android控件全解手册 | 再战Android系列 |
| Scratch编程案例 | 软考全系列 | Unity3D学习专栏 |
| 蓝桥系列 | ChatGPT和AIGC |
👉关于作者
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎底部卡片私我,交流让学习不再孤单。

👉实践过程
😜需求
公司产品是对医学的,整体设计基本兼容所有科室,但这样卖的贵,就用一套代码区分了多个科室,假装是单科室的产品,卖的便宜些。
因此发布apk的时候,可能就会存在很多个,目前就当前代码,改个应用名和logo以及首页图,就发布出8个产品了。要想工作少,不复制代码,还要在同一个设备上能够同时存在,就必须得这么干。
😜操作
找到你的主项目的 build.gradle 文件,修改如下:
android {
...
productFlavors {
appOne { //appOne自己随便换名字
// 设置applicationId(这里很重要,两个相同applicationId的apk不同同时安装在同一台Android手机中)
applicationId "com.zhima.demo"
// 定义app_icon字段,在AndroidManifest.xml文件中用到
manifestPlaceholders = [app_icon: "@mipmap/ic_launcher", app_name: "测试-1"] //设置启动logo和应用名称
}
appTwo { //appTwo自己随便换名字
applicationId "com.zhima.demo1"
manifestPlaceholders = [app_icon: "@mipmap/ic_launcher1", app_name: "测试-1"]
}
}
}
接着我们需要找到 AndroidManifest.xml 文件,修改 icon 和 label 为动态变量

变量名就是我们在 build 中设置的。这时候你会发现 app_icon是红色?不要紧,只需要在 build 中怎么加忽略设置即可。
android {
...
lintOptions {
checkReleaseBuilds false
abortOnError false
}
}
然后删除你的 res/values/strings.xml 里的app_name字符变量。切记要删除。
首页不同背景图怎么做?
这就很简单了,启动后在 onCreate 中获取 app 名称?获取包名?自己做区分就好业务就ok了。
😜其他问题
如果你只是个小 demo 测试下,那么上面的操作基本没问题,但是实际项目用到的技术很多,首先第一个就是 app_name 冲突。
你依赖了多个三方框架,其中一个框架的 AndroidManifest 里面也有app_name,这时候你可以下载框架源码,用源码依赖的形式,然后删除里面的app_name。
可如果你不想源码依赖怎么办?那就需要在你自己的主项目 application 下添加 tools:replace=”android:label” 属性解决
另一个问题:
Error:All flavors must now belong to a named flavor dimension.Learn more at
这个一个错误,意思是:所有的flavors都必须属于同一个风格。这是为了避免flavor 不同产生误差的问题,应该在所有的库模块都使用同一个foo尺寸。
不明白?没关系,作者也不明白,能用就行了。哈哈哈
在主app的build.gradle里面的
defaultConfig {
//......
//版本名后面添加一句话,意思就是flavor dimension 它的维度就是该版本号,这样维度就是都是统一的了
flavorDimensions "versionCode"
}
再填一坑:
如果你的项目发包后安装的时候提示:xx有相同组件之类的。基本就是有些唯一属性值方面的技术没有进行更改。比如provider。
在AndroidManifest文件定义了一个provider

记住,provider标签的authorities属性的值一定要是唯一的,如果两个app的authorities属性值一样,就会提示安装失败,一定要记住!!
这就需要仿照前面的形式,再自定义个 provider_name 变量即可。
最终你就可以愉快的打包啦,打包的时候会提示你选择哪几个包。

👉其他
📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。
温馨提示:点击下方卡片获取更多意想不到的资源。

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/e3b2638ef5.html
