文章中的工具:
链接: https://pan.baidu.com/s/1hpUEn_Nf3_qnspYqieqN5A
提取码: vtg2
Obb文件的修改
一般拿到一个游戏的obb文件后,我们可以直接使用解压工具对其解压即可,obb文件都是zip格式的压缩问题,当我们对obb解压后的文件进行修改后,我们需要重新对其压缩打包成obb文件。这里压缩有一点要注意,就是要使用winrar的存储格式进行压缩,如下图所示
但是在实际过程中,可能会遇到一个游戏的obb文件夹内有两个obb数据包的情况,出现这种obb时使用winrar存储格式压缩会出现游戏无法识别的问题,这时就需要使用特殊的工具来解决了,下图是我制作的工具,专门用来修改这样的obb数据包
使用方式也相当简单:
1、需在某个盘的根目录下创建相同的obb解压目录,比如要替换obb包里面TWD\Content\Paks\pakchunk0-Android_ASTC.pak这个文件,那么就要在D盘(其他盘也可)创建这样的路径D:\TWD\Content\Paks,然后将修改好的pakchunk0-Android_ASTC.pak放入这个目录下。
2、打开程序选择要修改的obb文件(注: 会直接会在obb文件上进行修改,所以请提前备份),然后点导入文件选择要替换的导入文件即可。
APK校验的去除
当修改好obb导入到设备中后,你可能会悲催的发现游戏出现了闪退无法运行等情况,而且导入的obb也被自动删除了,这其实是apk程序中加入了对obb文件的校验,我们使用jadx对apk进行反编译就能找到相应的校验代码,我们找到com.google.android.vending.expansion.downloader.d类,就会发现如下代码
而实际上文件的长度来自于游戏包名下的某个类里(这里使用了混淆),很容易找到,我们和实际的obb文件大小一对比就会发现
一般对obb的校验基本都是只验证obb文件的大小(别的情况暂时没有遇到过),这时想去除校验,就只能反编译apk修改代码来实现了,而jadx是无法修改代码的,所以要使用别的工具,首先我们先打开ApkToolAid
选择apk文件后,点击反编译
反编译后找到smali文件夹,里面的smali文件就是我们需要修改的代码,有两种修改方式,首先最简单的就是直接修改文件的校验大小值,我们查看一下修改好的obb文件大小,并将其转成16进制填入其中即可
然后找到刚才jadx中看到的相同目录下的smali文件
修改这个大小后保存即可。但是这种方式只是改了当前对obb文件校验的大小值,如果后面有修改了obb文件,那么还需要继续修改这里,比较麻烦。
第二种方式就是一劳永逸了,首先将上图的大小改成0x0,如下所示
然后修改对文件大小校验的地方,就是上面的com.google.android.vending.expansion.downloader.d类对应的smali文件,然后根据方法参数(下图绿色部分)找到对应的方法
将如下代码进行替换
替换代码:
invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result p0 if-eqz p0, :cond_2 const-wide/16 v0, 0x0 cmp-long p0, p2, v0 if-eqz p0, :cond_1 invoke-virtual {p1}, Ljava/io/File;->length()J move-result-wide v0 cmp-long p0, v0, p2 if-nez p0, :cond_0 goto :goto_0 :cond_0 if-eqz p4, :cond_2 invoke-virtual {p1}, Ljava/io/File;->delete()Z goto :goto_1 :cond_1 :goto_0 const/4 p0, 0x1 return p0 :cond_2 :goto_1 const/4 p0, 0x0 return p0
修改完成保存,然后在使用ApkToolAid进行回编译生成apk即可。
678VR游戏网最快提供最新的Oculus Quest游戏破解与汉化资源,并且这里只针对国外游戏破解,不发布任何国内开发商作品,专业的游戏供应访问 www.678vr.com 免费的第三方Quest游戏请使用SideQuest安装
678VR游戏网 » Quest安卓游戏汉化通用教程|第一篇:Obb文件的修改及APK的校验去除
常见问题FAQ
- 开通VIP的好处?
- VIP会员享有本站所有资源免费下载、查看隐藏内容、本站商品折扣,等特殊的权力。
- 是否可以与他人分享会员账号?
- 一个会员账号仅限一个人使用,禁止转借、转租、转卖本站账号,一经发现做永久封号处理。
- 下载不了的游戏怎么办?
- 由于某些特殊原因下载不了的,请联系客服哦。
- 是否可以申请退款?
- 网站会员属于虚拟服务,付款后不能够申请退款。如付款前有任何疑问,请联系站长处理。
- 遇到付款失败,付款后没有生效怎么办?
- 如果出现类似问题,不必惊慌,请务必截图联系客服人员处理。
- 付费资源在已开通VIP的情况下还需要单独购买吗?
- 本站所有资源,会员VIP都可下载(包括付费资源),可直接下载。