在工作的时候发现的一个问题,在虚幻5打包完安卓包之后会发现游戏的访问文件夹权限总是开着的,最后查实是Manifest文件中的一个属性的原因,属性名为bUseExternalFilesDir,把他改为false就能解决问题了。
下载apktool.bat、apktool.jar两个文件新建文件夹,将两个文件放入文件夹内,这里以路径为C:\Users\kimiliu\Desktop\test_01的test文件夹做实例
![](https://img-blog.csdnimg.cn/e3901edc8f8746aea8c4a01e7fb162bd.png)
进入“此电脑-属性-高级系统设置-环境变量”中的系统变量进行如下配置:
:找到系统变量中的path
![](https://img-blog.csdnimg.cn/8566b62de0414345a5a7274119e51ed7.png)
: 填入文件夹路径
![](https://img-blog.csdnimg.cn/43d368d07db34514824d661914a1ca9d.png)
完成以上步骤后,以管理员身份进入cmd,cd到这个文件夹内,输入apktool,如果显示及如果如下,则说明成功
![](https://img-blog.csdnimg.cn/630830cc2f404ce487d59fe5fc431800.png)
把要反编译的apk包放到test_01文件夹内在命令行内输入apktool d WeWorld-arm64.apk(apktool d加上文件名)
![](https://img-blog.csdnimg.cn/855a3a59b6574f1bb45744707709609e.png)
成功后如下所示
![](https://img-blog.csdnimg.cn/21ad405a05944afda6e432689b4666f3.png)
完成后会在apk所在文件夹内生成一个名为WeWorld的文件夹
![](https://img-blog.csdnimg.cn/f66532b0b11542b680f7dda24f0086c5.png)
进入文件夹,编辑AndroidManifest,并保存输入apktool b WeWorld
![](https://img-blog.csdnimg.cn/f117676da47d4beabeb5f483607408be.png)
成功后如下所示,同时会在dist文件夹内生成一个新的apk包
![](https://img-blog.csdnimg.cn/7e3293b6ea3f48e0aecadd04c3c706d4.png)
![](https://img-blog.csdnimg.cn/0044a23723fb43bbaf1b044f24fcb93f.png)
11、下载.keystore文件,将其和新生成的apk包放到Java目录下的bin文件夹下
![](https://img-blog.csdnimg.cn/5599ee9c2faf413e80912bac6d0f8736.png)
先cd到Java的bin文件夹内,之后在命令行中输入: jarsigner -verbose -keystore abc.keystore -signedjar testNew.apk testOld.apk abc.keystore( testNew.apk:新生成的包名;testOld.apk:复制到bin目录中的包名 ) 此处输入: jarsigner -verbose -keystore weworld.keystore -signedjar WeWorld-arm64.apk WeWorld.apk weworld.keystore
注:密钥库密码短语为:123123,weworld.keystore密钥口令为:Jklghasdf48693
![](https://img-blog.csdnimg.cn/59899f3634554e2e9f27f4275272cbef.png)
成功后如下图所示
![](https://img-blog.csdnimg.cn/1c083b9146b64888a7319a1692fa1657.png)
获得的新apk包位于keystore同级目录下,这个apk包可以正常使用
![](https://img-blog.csdnimg.cn/5a60e5eade714e3a8a5c9f23e32ef6dd.png)
|