直接选中app/src/main/java下的自定义包名,有可能refactor后还有需要手动调整的地方,编译不过时可以定位。
备选工具:https://github.com/king-ma1993/AndroidManifestAdder
build.gradle(app)最下方添加,要插入的各组件数量
manifestConfig { enable = true activityCount = 20 providerCount = 0 serviceCount = 10 receiverCount = 10}
在打包前顺序执行一次build和publich, 也可以自己配置打包的gradle,让它每次自动执行
在proguard-rules.pro文件中底部指定混淆字典文件
-obfuscationdictionary proguard-1il.txt-classobfuscationdictionary bproguard-1il.txt-packageobfuscationdictionary proguard-1il.txt
如果你不想自己生成混淆字典,也可以下载一些大家常用的比较优秀的过审字典 AndroidProguard六种混淆字典
build.gradle(app)
android { compileSdkVersion 28 defaultConfig { applicationId "com.aaa.bbb.ccc.android" //包名必须修改 minSdkVersion 21 targetSdkVersion 26 versionCode currentVersionCode versionName "1.0.1" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" multiDexEnabled true resConfigs "en" ndk { abiFilters 'arm64-v8a', 'armeabi-v7a' } }
同时修改Manifest中的应用名称
保证每一个包的图标和图片资源是不一样的。
需要注册多个占位域名做为马甲包的过审域名,不能使用同是一个一级域名来做。否则大几率过不了审核,google大部分时候不会告诉你明确的原因,而是让你自己找原因,如下是常见的拒绝通知。
当同一种包发布的数量超过 10个时,每个包做一个不同的方法,在Application类的oncreat 中调用一下,不同包切换一下调用的位置与时机,可以变化 dex 的字节码,防止重复检测。
如果你用同一个机器,登陆多个googleplay账号,那后边的基本都不能通过审核。
更改了包名后,需要生成新的json文件:https://console.firebase.google.com/project
访问这个网址创建你的项目时,也要要用虚拟机,可以跟上方googleplay账号使用相同的虚拟机
创建项目,输入新的名包后,就可以直接下载文件
如果你集成了facebook,需要看这里,如果不需要可以略过
安卓 jks文件生成并提取MD5、SHA1、SHA256
Facebook中创建应用的配置-密钥散列
来源地址:https://blog.csdn.net/xuanwenchao/article/details/130026014