Android Studio apk打包自定义包名
程序员文章站
2022-08-11 09:57:39
android studio apk打包自定义包名,直接上代码:
android {
......
android.applicationvariants...
android studio apk打包自定义包名,直接上代码:
android { ...... android.applicationvariants.all { variant -> variant.outputs.all { output -> def outputfile = output.outputfile if (outputfile != null && outputfile.name.endswith('.apk')) { outputfilename = defaultconfig.applicationid.subsequence(defaultconfig.applicationid.lastindexof(".") + 1, defaultconfig.applicationid.length()) + "-v" + defaultconfig.versioncode + "-" + releasetime() + "-" + output.basename + ".apk" } } } } def releasetime() { return new date().format("yyyymmddhhmmss", timezone.gettimezone("utc")) }
生产的包名为:项目名-版本号-打包时间-编译类型.apk
该代码只能在3.0.0及以上使用,variant.outputs.all 方法只在3.0.0才出现的
如果你想在3.0.0以下使用你可以试试这个:
android { ...... variant.outputs.each { output -> if ("release".equals(variant.buildtype.name)) { println("releasebasename:"+variant.buildtype.name) def string = defaultconfig.applicationid.subsequence(defaultconfig.applicationid.lastindexof(".") + 1, defaultconfig.applicationid.length()) + "-v" + defaultconfig.versioncode + "-" + releasetime() + "-" + output.basename + ".apk"; output.outputfile = new file(output.outputfile.parent, string) }else if ("debug".equals(variant.buildtype.name)) { println("debugbasename:"+variant.buildtype.name) def string = defaultconfig.applicationid.subsequence(defaultconfig.applicationid.lastindexof(".") + 1, defaultconfig.applicationid.length()) + "-v" + defaultconfig.versioncode + "-" + releasetime() + "-" + output.basename + ".apk"; output.outputfile = new file(output.outputfile.parent, string) } } } def releasetime() { return new date().format("yyyymmddhhmmss", timezone.gettimezone("utc")) }
生产的包名为:项目名-版本号-打包时间-编译类型.apk
这个有个bug就是在打包时能正常生产apk包,但是直接运行安装到手机时会提示找不到包名,初步分析是因为包名中含有时间戳,去掉分秒的时间就可以了:”yyyymmddhh”。
推荐阅读
-
Android Studio 超级简单的打包生成apk的方法
-
Android studio 下的APK打包失败问题解决办法
-
Android Studio将程序打包成APK的步骤详解
-
Android Studio修改Apk打包生成名称
-
android studio logcat 无筛选 显示全部日志 无应用包名区分方式
-
[build.gradle配置系列(一)]android studio根据版本号动态生成apk名
-
Android Studio apk打包自定义包名
-
解决android studio 打包发现generate signed apk 消失不见问题
-
Android Studio数字签名打包apk图文步骤教程
-
Android studio 踩坑记录之包名异常导致无法通过包名类名启动App