Quest安卓游戏汉化通用教程|第一篇:Obb文件的修改及APK的校验去除 暂无演示

Quest安卓游戏汉化通用教程|第一篇:Obb文件的修改及APK的校验去除

售价:
¥ 免费
  • 会员用户购买价格 : 0硬币
  • 免费售前咨询
  • 免费安装指导
  • 付费安装资源
  • 付费终身升级
  • QQ保障售后服务
  • 网站应急咨询顾问

升级尊贵会员
享受全站VIP待遇

32784+
会员已经加入
  • 文章介绍
  • 评价建议
  • 文章中的工具:

    链接: 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即可。

    本站游戏资源如有侵犯你的权益请联系管理员QQ:751166800, 或加入QQ群:411063730 ,如有任何问题点击"关于本站"说明,站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请在下载24小时内删除!
    678VR游戏网最快提供最新的Oculus Quest游戏破解与汉化资源,并且这里只针对国外游戏破解,不发布任何国内开发商作品,专业的游戏供应访问 www.678vr.com 免费的第三方Quest游戏请使用SideQuest安装

    678VR游戏网 » Quest安卓游戏汉化通用教程|第一篇:Obb文件的修改及APK的校验去除

    常见问题FAQ

    开通VIP的好处?
    VIP会员享有本站所有资源免费下载、查看隐藏内容、本站商品折扣,等特殊的权力。
    是否可以与他人分享会员账号?
    一个会员账号仅限一个人使用,禁止转借、转租、转卖本站账号,一经发现做永久封号处理。
    下载不了的游戏怎么办?
    由于某些特殊原因下载不了的,请联系客服哦。
    是否可以申请退款?
    网站会员属于虚拟服务,付款后不能够申请退款。如付款前有任何疑问,请联系站长处理。
    遇到付款失败,付款后没有生效怎么办?
    如果出现类似问题,不必惊慌,请务必截图联系客服人员处理。
    付费资源在已开通VIP的情况下还需要单独购买吗?
    本站所有资源,会员VIP都可下载(包括付费资源),可直接下载。

    发表评论