吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1324|回复: 0
收起左侧

[Android 讨论] Android Killer修复关于aapt2的问题

[复制链接]
a13389809 发表于 2023-11-29 13:07

前言:(着急的可以先不看)AndroidKillder使用了好久了,不管jeb或者别的tools有多优秀,习惯确实很重要,不知道有多少人和我一样喜欢killer的ui;或者说已经习惯了用killer,同时也遇到很多问题。虽然killer不维护了,但是还是想用它。之前遇到很多问题,都在凑合解决,今天终于有点空了,来了论坛找各种问题的答案,特别是关于aapt2的问题,一直没有得以解决,今天来说一下killer遇到的两个问题。这也是从我使用killer这3年以来遇到的大部分问题。

问题1:回编译之后apk安装失败

这种问题一般都是由于签名的问题,因为android killer使用的是v1签名;

之前的解决方案:打包之后,导入模拟器,使用MT进行签名再安装。

新的一键式解决方案:替换掉根目录的签名文件和签名工具的jar

这里我就不赘述了,参考链接:AndroidKiller使用V3签名

问题1.1 使用的时候遇到情况:系统找不到指定文件

最后签名完了提示我找不到指定文件
正在对 APK 进行签名,请稍等...
"E:\Android\yjy\AndroidKiller_v1.3.1\projects\项目名称(2)\Bin\project.apk"
"E:\Android\yjy\AndroidKiller_v1.3.1\projects\项目名称(2)\Bin\project.apk.sign"
source:
E:\Android\yjy\AndroidKiller_v1.3.1\projects\项目名称(2)\Bin
zipalign location: BUILT_IN
C:\Users\M1861\AppData\Local\Temp\uapksigner-2935952246011960141\win-zipalign_29_0_2.exe1463979808780431891.tmp
keystore:
[0] 476a92f9 E:\Android\yjy\AndroidKiller_v1.3.1\bin\apktool\bjx.jks (RELEASE_CUSTOM)

  1. project.apk
    SIGN
    file: E:\Android\yjy\AndroidKiller_v1.3.1\projects\项目名称\Bin\project.apk (133.87 MiB)
    checksum: bf4338bb9473c97d828e0da867eac37f7e2aae3a1e684ed0d5f3a3f71be6287 (sha256)
    • zipalign success
    • sign success
      VERIFY
      file: E:\Android\yjy\AndroidKiller_v1.3.1\projects\项目名称\project-aligned-signed.apk (134.15 MiB)
      checksum: 64c6395ee8c153a7ab0efefc63c65ef5f0b12d3e6400fcc9e55550df78976783 (sha256)
    • zipalign verified
    • signature verified [v2, v3]
      Subject: C=3124, ST=2, L=22, O=11, OU=22, CN=11122
      SHA256: 2c00ce16755454a52babe1ab4d3a79adc24eb2b44aff4708bcef624766ea17e6 / SHA256withRSA
      Expires: Sun Nov 22 11:46:04 CST 2048
      [Wed Nov 29 11:48:05 CST 2023][v1.2.1]
      Successfully processed 1 APKs and 0 errors in 8.09 seconds.
      系统找不到指定的文件。
      APK 签名失败!

不知道为什么,最后一步的时候,我的“()”消失了,我没找具体原因,从日志里看出来了,所以项目名称尽量不用特殊字符

解决方案:项目名称里不要有括号()

问题2:invalid resource directory name: xxxxx\Project\res navigation

问题解答:由于Android Jetpack中的 Navigation 组件,在aapt2中才可以使用,而android killer使用的默认是aapt1也就是aapt。

之前的解决方案:在项目目录手动使用apktools命令进行打包,

java -jar apktool-2.7.1.jar b Project --use-aapt2 -o xxx.apk

然后导入模拟器使用mt签名,然后再安装。(这个过程很墨迹 )

新的解决方案:修改android killer的签名配置文件,强行使用aapt2
> 找到android killer目录 AndroidKiller_v1.3.1\bin\apktool中的 apktool.bat;右键-编辑
> 可以看到有一行命令
> 修改前:java -jar "%~dp0\apktool\apktool-2.7.1.jar" %1 %2 %3 %4 %5 %6 %7 %8 %9
>修改后:java -jar "%~dp0\apktool\apktool-2.7.1.jar" %1 %2 %3 %4 "--use-aapt2" %5 %6 %7 %8 %9
> 点击保存

问题2.1  回编译会发生乱码情况。

E:\Android\yjy\AndroidKiller_v1.3.1\projects\瀹夊崜灏忔媷鎸嘝roject\res: error: failed to open directory: 绯荤粺鎵句笉鍒版寚瀹氱殑鏂囦欢銆? (2).
>brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\M1861\AppData\Local\Temp\brut_util_Jar_19857296575309770097273044741215054131.tmp, compile, --dir, E:\Android\yjy\AndroidKiller_v1.3.1\projects\安卓小拇指\Project\res, --legacy, -o, E:\Android\yjy\AndroidKiller_v1.3.1\projects\安卓小拇指\Project\build\resources.zip]
APK 编译失败,无法继续下一步签名!

解决方案:项目名称不要使用中文。

不知道为什么,aapt2的项目不能使用中文,这里我没有完美解决方案,只能每次编译前看看项目中是否有aapt2的资源,有的话就去修改参数,没有的话,就正常使用。

如果有大佬有完美解决方案,可以留言,感激不尽。
有ak其他问题也都可以留言,基本上保证apktool新版本基本不会有问题。

感谢

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 14:40

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表