Android——编译、签名、打包
Android——签名、打包
wzj_what_why_how
逆水行舟,不进则退,知行合一,稳健上进。
展开
-
打包过程遇到的问题:The binary version of its metadata is 1.6.0, expected version is 1.4.0
在给公司的一个项目做打包过程的遇到的打包问题,将一些解决方案整理如下:原创 2023-06-01 10:37:31 · 2308 阅读 · 1 评论 -
解决Android 编译warning问题
编译过程出现一下问题:DSL element ‘android.dataBinding.enabled’ is obsolete and has been replaced定位到app的build.gradle文件中的dataBinding{ enabled = true }解读其意思是:DSL元素的android.dataBinding。已被替换为“android.buildFeatures.dataBinding”,它将在5.0版的AndroidGradle原创 2021-08-06 11:35:19 · 910 阅读 · 0 评论 -
Andord:升级Android studio4.2编译失败问题
e: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBExceptionExecution failed for task ‘:app:kaptNormalDebugKotlin’.Internal compiler error. See log for more details在项目中的build.gradle中 //dependencies闭包 dependencies { //原先是3.5.3 cl.原创 2021-05-22 15:13:58 · 873 阅读 · 3 评论 -
AS 项目 签名(三)
bug:the apk for your currently selected variant(app-release-unsigned.apk)is not signed场景:点击截图这里的assemble,build的时候,然后就会报最上面的bug。原因是:直接这么操作,使用 release 配置来编译项目时,没有设置好签名信息。解决方案:2.配置这些选项。打完收工!...原创 2021-03-11 18:33:16 · 112 阅读 · 0 评论 -
AS报错:design editor is unavailable until after a successful project sync.
design editor is unavailable until after a successful project sync.这种一般是出现在网络查或者无网络亦或者是需要翻墙的时候,刚开启AS需要去sync project with Gradle Files。这时候可以尝试:File > Sync Project with Gradles Files.如果还不成功,可以选择Build > Rebuild project...原创 2020-11-16 11:18:10 · 6458 阅读 · 2 评论 -
AS 项目 签名(二):隐式加载签名
在app的build.gradle中定义方法:def setSigningProperties() { //这里是读取build.properties文件,提供给下方代码用来提取keystroe_storeFile等key的值 def props = new Properties()// def currentFlavor = getCurrentFlavor()// def flavorBuildPro = "app/src/${currentFlavor}/buil原创 2021-03-11 18:13:57 · 127 阅读 · 0 评论 -
解决方案: 安卓打包apk出错 AAPT: error: failed to read PNG signature: file does not start with PNG signature.
问题Failed to read PNG signature: file does not start with PNG signature解决方法一:在app/build.gradle文件中加以下代码aaptOptions.cruncherEnabled = falseaaptOptions.useNewCruncher = false解决方法二:只需要将图片复制出来,然后右键使用画图编辑,保存为PNG格适即可。解决方法三:该图片的后缀为.png,重命名该图片的后缀为.jpg。原创 2021-03-11 17:14:50 · 5826 阅读 · 0 评论 -
Apk安装和打包流程
Apk打包流程1.aapt阶段:aapt工具编译res资源文件,把大部分xml文件编译成二进制文件(图片文件除外),同时生成R.Java文件和resources.arsc文件,里面保存了资源的ID和在APK中的路径。2.aidl阶段:如果项目中有使用AIDL,那么就会把.aidl文件编译成.java文件。3.javaCompiler阶段:将所有.java文件(包括R文件和AIDL生成的.java文件),通过javac工具生成class文件。4.dex阶段:将生成的.class文件和第三方库的原创 2020-10-22 18:18:12 · 649 阅读 · 0 评论 -
““ is not translated in “zh“ (Chinese) ……
What:Why:lint检查器报错提示,是说我没有对string文件做国际化翻译操作。How:方案一:直接无视方案二:整体忽略:如图:加多这条~<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">方案三:局部忽略:如图,加多这条~ translatable="false"方案四:进..原创 2020-10-12 20:13:47 · 833 阅读 · 0 评论 -
记录:Installation failed due to invalid APK file 以及Clean Project
Installation failed due to invalid APK file:..导致无法安装调试,可能存在的原因一:包名的问题,包名“.”之后首位一定不能是“_”,例如“com.boot._listview”,该包名得工程是无法被安装的,修改成“com.boot.listview”即可。可能存在的原因二:目前我遇到的是第二种情况,这个项目之前就是可以安装调试的,但是切换分支之后,隔了两天之后就不行了。我推测并不是原因一,因此,我走了Sync Project with Gradle F原创 2020-08-31 10:02:52 · 1182 阅读 · 0 评论 -
AS 项目 签名
初步点击Build->点击Cenerate Signed Bundle or APK->Create New->填写相关内容->一键生成然后,报错!但是,生成的jks其实还是可以用来签名打包的。不过,为了跟随行业标准格式接下来,进一步操作:在控制台上输入下面的一段代码即可:keytool -genkey -alias testalias -keypass 123456789 -keyalg RSA -keysize 2048 -valid..原创 2020-08-03 12:12:41 · 463 阅读 · 0 评论 -
AS 乱码;Unfortunately you can‘t have non-Gradle Java modules and Android-Gradle modules in one projec
问题:(个人认为,这是AS的一个bug)直接上图:经过实践网上的种种解决方法,无果。Error: Unfortunately you can't have non-Gradle Java modules and > Android-Gradle modules in one project最终选择最暴力的做法:重新从git拉取新的项目,解决问题。...原创 2020-07-29 16:41:37 · 420 阅读 · 0 评论 -
通过aar依赖方式解决“优化避免恶意可执行程序感染漏洞”的需求
背景需求:解决安全漏洞之避免恶意可执行程序感染漏洞原因:项目中,我们使用了openvpn模块,开启了另一个进程去做一些需求。但是,打包成某些app的时候,并不需要改模块。而代码反编译之后,可以检测到这些模块。因此,需要做出一些优化。方案一:针对某一客户打包的app中,独立出一个分支,去掉相关代码和依赖。经过实践,工程量很大,而且容易存留潜在问题。方案二:将该模块的module依赖改成aar依赖。正题:首先是先这么操作:将原本的依赖去掉:1.修改app下的gradle中原创 2020-07-29 14:07:03 · 393 阅读 · 0 评论 -
记录一次生成arr以及电脑同时黑屏带来的问题
开机之后,重新打开AS开始出现问题。解决Android studio错误“Unsupported Modules Detected: Compilation is not supported for following modules”通过一下的操作,初步解决成功:1-关闭项目2-删除.IDEA目录3-删除所有.iml文件4-打开android studio并导入该项目然后,就紧接着出现了另一个问题:“Error running :Default Activity no.原创 2020-07-28 18:16:55 · 201 阅读 · 0 评论