十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

android-实例-蒲公英-更新与安装-6-签名生成APK-问题

android-实例-蒲公英-更新与安装-6-签名生成APK-问题 问题1要求要使debug release两种模式签名一致也就是说从蒲公英平台下载的apkrelease模式直接可以覆盖android studio调试时安装的应用程序debug模式或者逆向安装 。解决可参考下面在build.gradle(Module:模块名称)中设置android { defaultConfig {...........} //--------------------------------------------------------------signingConfigs{ release { storeFile file(C:/apk_key/appkey2608.jks) storePassword 123456 keyAlias key0 //keyPassword System.getenv(123456) keyPassword 123456 } }buildTypes {debug{ // 关键让 debug 变体使用 release 的签名配置 signingConfig signingConfigs.release }release{ // 让 Release 构建使用这个签名配置 signingConfig signingConfigs.release // 建议开启代码混淆和资源压缩 minifyEnabled false shrinkResources false proguardFiles getDefaultProguardFile(proguard-android-optimize.txt), proguard-rules.pro } } } }注意点2现象在android studio调试时安装的应用程序debug模式可以正常工作但在apk安装上的部分功能失效 出错。解决同样在build.gradle(Module:模块名称)中设置buildTypes { debug{ // 关键让 debug 变体使用 release 的签名配置 signingConfig signingConfigs.release } release { // 让 Release 构建使用这个签名配置 signingConfig signingConfigs.release// 建议开启代码混淆和资源压缩 minifyEnabled false // 开启混淆减小包体积、增加反编译难度 shrinkResources false // 移除无用资源proguardFiles getDefaultProguardFile(proguard-android-optimize.txt), proguard-rules.pro } }原因时生成apk时部分程序被优化删除了关闭这两项生成的apk占空间稍大但功能正常。需要时可以在类前加上Keep注解Keep是 Android 官方提供的一个注解用来告诉混淆器R8 / ProGuard这个类、方法、字段不要被混淆或删除。
返回列表