问题描述
所以我使用react native expo生成了一个apk,但找不到设置目标sdk版本的方法,所以论坛中建议的解决方案是分离我的应用程序,这对我们的应用程序来说是不可能的,它会被破坏,我知道!
所以,我正在考虑使用 apktool 来设置 targetVersion!我使用以下命令从我的 apk 中获取了一个文件夹:
apktool d myapk.apk
我在 androidmanifest.xml 中进行了更改,然后..
我想从这个编译的 apk 中再次获取我的 apk。从他们的文档中,我看不出他们是如何做到这一点的!他们使用带有 b
选项的推荐,但不在文件夹上使用!!
任何想法或帮助都将受到高度赞赏。
解决方法
当您执行 apktool d myapk.apk
时,您将获得文件夹 myapk/
,其中包含您的整个反编译 apk。
更改您需要的内容后(在这种情况下,您实际上需要更改 apktool.yml 中的 targetSdkVersion
参数,而不是 AndroidManifest.xml),您需要运行 apktool b myapk/
(传递那个 myapk 文件夹),这样您就会在 myapk/dist/myapk.apk 中获得重新编译的 apk。
sdkInfo:
targetSdkVersion: '27' #(or any new desired target version)
之后,您仍然需要对该 apk 进行签名和压缩对齐,以使其在您的设备上运行。