解码和重建后无法安装 .apk(Apktool、Apkstudio)
Can't install .apk after decoding and rebuild (Apktool, Apkstudio)
我用 apktool 解码了一个 apk 文件,我没有改变任何东西。之后,我再次构建它,然后尝试安装 apk,但即使进行了一些基本更改,我仍收到以下错误。
我用 windows 做了什么 cmd
:
apktool d somename.apk -o testfolder
然后
apktool b testfolder
和:
adb install somename.apk
pkg: /data/local/tmp/somename.apk
Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]
rm failed for -f, No such file or directory
我用apkstudio做了,结果一样。
$ adb install -r "somename.apk"
pkg: /data/local/tmp/somename.apk
Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]
rm failed for -f, No such file or directory
Process exited with code 0
Was it a system app? No.
有人可以帮助我吗?
非系统apk需要重新编译后进行签名。
尝试签署您的 apk:Signing Your App Manually
我知道之前有人回答过,但为了更清楚,您可以通过这些命令签名。
首先生成密钥:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
第二次签名:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
如果您不喜欢在上一个命令后输入密码或在 bash 文件中输入密码,请使用:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore [Your Key Store] [Address/YourApk.apk] alias_name -storepass [Your Password]
我用 apktool 解码了一个 apk 文件,我没有改变任何东西。之后,我再次构建它,然后尝试安装 apk,但即使进行了一些基本更改,我仍收到以下错误。
我用 windows 做了什么 cmd
:
apktool d somename.apk -o testfolder
然后
apktool b testfolder
和:
adb install somename.apk
pkg: /data/local/tmp/somename.apk
Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]
rm failed for -f, No such file or directory
我用apkstudio做了,结果一样。
$ adb install -r "somename.apk"
pkg: /data/local/tmp/somename.apk
Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]
rm failed for -f, No such file or directory
Process exited with code 0
Was it a system app? No.
有人可以帮助我吗?
非系统apk需要重新编译后进行签名。 尝试签署您的 apk:Signing Your App Manually
我知道之前有人回答过,但为了更清楚,您可以通过这些命令签名。
首先生成密钥:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
第二次签名:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
如果您不喜欢在上一个命令后输入密码或在 bash 文件中输入密码,请使用:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore [Your Key Store] [Address/YourApk.apk] alias_name -storepass [Your Password]