出于某些商业目的,我需要从apk文件中删除某个目录。例如删除lib / mips64。
在任何文件操作之前,此过程不允许我解压缩apk(使用zip重新打包apk文件会使其损坏)。
我尝试了“aapt remove”命令,但它在目录上没有用,我没有找到任何其他可以完成这项工作的修饰符。
有什么想法吗?
后来我发现在删除所有内部文件后将删除该目录。有点聪明:)
答案 0 :(得分:1)
您可以使用以下命令(其中“ META-INF”是此示例中的文件夹)从给定的APK中删除文件或文件夹:
zip -d your.apk "META-INF/*"
要确保删除文件/文件夹,可以运行以下命令:
unzip -l your.apk
它将在您的终端上显示一个这样的表。它不包含我删除的文件夹:
Length Date Time Name
--------- ---------- ----- ----
2284 08-13-2018 17:49 AndroidManifest.xml
916 08-13-2018 17:49 res/layout/activity_main.xml
3418 08-13-2018 17:49 res/mipmap-hdpi-v4/ic_launcher.png
4208 08-13-2018 17:49 res/mipmap-hdpi-v4/ic_launcher_round.png
2206 08-13-2018 17:49 res/mipmap-mdpi-v4/ic_launcher.png
2555 08-13-2018 17:49 res/mipmap-mdpi-v4/ic_launcher_round.png
4842 08-13-2018 17:49 res/mipmap-xhdpi-v4/ic_launcher.png
6114 08-13-2018 17:49 res/mipmap-xhdpi-v4/ic_launcher_round.png
7718 08-13-2018 17:49 res/mipmap-xxhdpi-v4/ic_launcher.png
10056 08-13-2018 17:49 res/mipmap-xxhdpi-v4/ic_launcher_round.png
10486 08-13-2018 17:49 res/mipmap-xxxhdpi-v4/ic_launcher.png
14696 08-13-2018 17:49 res/mipmap-xxxhdpi-v4/ic_launcher_round.png
2552 08-13-2018 17:49 resources.arsc
4716 08-13-2018 17:49 classes.dex
--------- -------
76767 14 files