国语视界

 找回密码
 立即注册
查看: 11623|回复: 14

[蓝光技术] Radius60-Sony 菜单修改

[复制链接]

48

主题

1488

帖子

3105

积分

版主

大洋
21162
阅读权限
140
发表于 21-3-10 03:34 | 显示全部楼层 |阅读模式
┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅
引言:感谢 世界哪有真情lu、9011、i6henl、だ`無ぺ窷. 、老黑、花九胖 大佬们提供技术支持与教程文档分享!
┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅

※※※※※※※※ 前言 ※※※※※※※※
  由 Radius60 制作的 Sony 菜单,修改文件查找与修改与常规 Radius60 菜单一致,特点是标志性的 Sony 菜单代码混淆,是此菜单修改的拦路虎。
  Radius60-Sony 文件层级结构,与常见的 Radius60 不同,所有 class 文件均放置在目录内,且基本采用单字母方式命名目录(包)名与 class 文件名。由于 class 文件名与目录(包)名重复,造成反编译出来的 java 文件,混淆报错处理困难。

  针对此类原盘,可以采用字节码修改的方式,直接对 class 文件下手,避开处理因混淆产生的大面积关联报错修改处理。
  字节码修改,所有变量有完整的类型类名指向,修改单 class 文件无需额外加载调用类库,能完美避开混淆造成的修改困扰。这里是 hyb9373 大佬的字节码工具修改帖子链接:
  hyb9373[蓝光技术] Sony+Radius60菜单用字节码工具修改的实例

  但字节码修改操作要求非常小心细致,因为修改过程中产生的错误,是非常难察觉和发现的,一旦出错无法排查出来,就只能重头再来一遍。而且,字节码的代码阅读,还是不如 java 代码方式阅读直观方便,因此,采用 java 代码方式来修改,还是具有一定的视觉处理优势的。
  利用新建子类的方式让反编译的 java 文件报错解除,使之能被修改编译,并让 BDJ 菜单正常工作。

  以下就是使用 java 代码方式对 Radius60-Sony 菜单进行修改的过程记录。

  本篇实例操作原盘:Whiplash.2014.UHD.BluRay.2160p.HEVC.TrueHD.Atmos.7.1-BeyondHD



※※※※※※※※ 菜单 class 文件查找 ※※※※※※※※
  StandardMenuXlet.class  BDJ启动入口类
  com.spe.g.a.class  菜单总类
  com.spe.g.b.l.class  字幕菜单-图块显示类
  com.spe.g.c.l.class  字幕菜单-按钮列表类
  com.spe.g.a.h.class  字幕菜单-按钮动作类
  b.c.a.n.class  CodeName 类



※※※※※※※※ 正文 ● 报错处理 ※※※※※※※※
  这里参考福克斯 04001 版本对混淆报错的处理。

  CodeName 类 报错处理
  字幕菜单-按钮列表类 报错处理

  字幕菜单-图块显示类 报错处理
  按钮图块显示类,调用的类较多,所以冲突报错也相对较多。
  图片类内代码调用使用到的类,可以通过 import 语句知道。

  1. The type b.q.d.b cannot be resolved. It is indirectly referenced from required .class files
  2.  无法解析到 b.q.d.b 类,它被所必需的.class 文件间接引用。【即菜单显示类所继承的父类或调用的函数所属类中,有引用到此类文件】

  3. The import b.q.c.a cannot be resolved
  4.  import 语句要导入的 b.q.c.a[类/函数/常量] 无法被解析到

  5. Multiple markers at this line
  6.         - The import b.q.d.g cannot be resolved
  7.         - The import b.q.d.g collides with another import statement
  8.  此代码行有多个解析标记
  9.   - import 语句要导入的 b.q.d.g[类/函数/常量] 无法被解析到
  10.   - import b.q.d.g 与另一个 import 语句冲突 【指去除包名 b.q.d 后的类文件名,g.class 与其他 import 语句导入的泪文件名重复】

  11. The import b.q.g collides with another import statement
  12.  import b.q.g 与另一个 import 语句冲突 【指去除包名 b.q 后的类文件名,g.class 与其他 import 语句导入的泪文件名重复】

  13. Only a type can be imported. com.spe.g.a resolves to a package
  14.  只能导入具体类型文件。(目录)。

复制代码

  上面列出了报错语句的翻译说明,为后续报错处理提供修改支持。

  以下是类文件的代码内容,已经标识出来所调用类的完整路径名,以及调用的函数格式。同时还标示出了 package 与 import 语句的报错原文。

报错说明一:
  import 语句无法解析到,是指导入的完整类名中,所包含的路径名(目录名)有同名类存在,造成重名冲突,因而无法检索到我们要的类文件。
  ……

报错说明二:
  import 语句与另一个 import 语句冲突,这是指两个导入的类文件拥有同样的文件名。
  譬如,import b.q.d.a.g; 与 import b.q.d.g; 两者导入的 g.class 文件重名。对于这种重名冲突,我们可以对代码语句中出现的同名类名,加上完整路径名,解决这个同名冲突问题。

报错说明三:
  import com.spe.g.a; 提示 com.spe.g.a 被解析为包。这是因为目录 com\spe\g\a\ 与类文件 com\spe\g\a.class 在代码中都同样以 com.spe.g.a 格式表示,所以出现了解析错误,没有指向 com.spe.g.a.class 类文件,同样是将 com\spe\g\a\ 目录屏蔽(删除)以去除解析干扰。

报错说明四:
  无法解析到 b.q.d.b 类,它被所必需的.class 文件间接引用。这类报错提示,一般出现在 extends 衔接的父类上。
  这类报错提示结果,主要是提示继承的父类中,有使用到 b.q.d.b 类。


  虽然依照以上报错说明给出的解决方式,可以去掉一部分的报错,但实际操作情况是,旧的报错解除,新的报错出现,在不断地尝试屏蔽各种新提示干扰后,依旧不能完全解除原盘的所有报错提示。
  这时候,我们就需要另一种解决思路:不再直接 import 原来的报错类文件,而是先对原 import 语句所要调用的类作 extends 操作,即建立它们的子类,然后通过 import 这些新子类,达到间接调用原有报错类文件的目的。
  新建不会重名的继承子类,让我们无须像原来的报错处理一样,去屏蔽冲突文件,方便菜单代码的修改操作。
  但这种操作,需要对 java 的编程有一定的操作基础知识,还要规避一些转义陷阱。
  具体操作,请查看下一章节。



※※※※※※※※ 正文 ● 按钮显示类的报错处理 ※※※※※※※※
  操作核心:首先,建立所调用的类文件的子类。然后,再修改按钮显示类里的 import 等调用语句,改为引用新建立好新子类文件。
  ……
  使用 SBDJ 工具建立继承子类(接口)的操作如下:
  ……
  新建的子类文件,同样会出现引用的父类类名报错,因此需要根据上一章节的报错处理解决。
  得到的正确编译子类 class 文件,可以转移保存,等待所有子类文件生成完毕,再统一加入 jar 文件内,作为外部 jar 调用以修改菜单代码文件。

  bqca | b.q.c.a 子类
  bqcb | b.q.c.b 子类
  bqdae | b.q.d.a.e 子类
  bqdag | b.q.d.a.g 子类
  bqdah | b.q.d.a.h 子类
  bqdbf | b.q.d.b.f 子类
  bqdbf.class | b.q.d.b.f 子类
  b.q.d.b.f.class | 类内容修改
  b.d.a.class | 类内容修改
  bqdc | b.q.d.c 子类
  bqdg | b.q.d.g 子类
  bqdh | b.q.d.h 子类
  bqdi | b.q.d.i 子类
  bqdq | b.q.d.q 子类
  bqdr | b.q.d.r 子类
  bqg | b.q.g 子类
  com.spe.g.b.l | 字幕菜单-按钮显示类



※※※※※※※※ 结语 ※※※※※※※※
  Radius60-Sony 类型的 BDJ 菜单代码,依据目前修改过的此类原盘的记录,它们的代码结构基本一致,本次制作好的子类 class 文件都能被后续 Radius60-Sony 原盘通用!
  感谢各位的阅读!




┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅分割线┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅
以上是《Radius60-Sony 菜单修改》的内容目录及片段,详细内容下载附件“Radius60索尼_爆裂鼓手_菜单.chm”查阅。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 6威望 +100 大洋 +2771 收起 理由
man125 + 1 很给力!
keinfsir + 10 很给力!
hyb9373 + 60 厉害了我的神!
why1812 + 50 + 600 毛大厉害!
gumfifa + 100 偶不D盘,为分享精神点赞
bobo + 50 + 2000 厉害了我的神!

查看全部评分

48

主题

1488

帖子

3105

积分

版主

大洋
21162
阅读权限
140
 楼主| 发表于 21-4-7 23:30 | 显示全部楼层
keinfsir 发表于 21-3-28 02:40
优秀的教程,非常感谢您的分享!我有这部电影,我想更改菜单标签。您知道此菜单是否结合了“ Sony + Radius ...

这个盘是 Sony + Radius60
回复 支持 1 反对 0

使用道具 举报

28

主题

3033

帖子

7106

积分

旅长

大洋
11498
阅读权限
70
发表于 21-3-10 07:01 | 显示全部楼层
十分感谢nn大佬发布新的教程!nn大佬666!
回复 支持 反对

使用道具 举报

0

主题

753

帖子

89

积分

列兵

大洋
7404
阅读权限
10
发表于 21-3-10 10:36 | 显示全部楼层
十分牛B!纯技术贴!
回复 支持 反对

使用道具 举报

11

主题

4875

帖子

687

积分

连长

大洋
56549
阅读权限
40
发表于 21-3-10 16:32 | 显示全部楼层
原盘的灵魂在于DIY!
回复 支持 反对

使用道具 举报

0

主题

1138

帖子

709

积分

连长

大洋
4024
阅读权限
40
发表于 21-3-10 17:05 | 显示全部楼层
支持技术分享!
回复 支持 反对

使用道具 举报

13

主题

1750

帖子

7026

积分

旅长

大洋
16109
阅读权限
70

灌水之王

发表于 21-3-10 21:01 | 显示全部楼层
来晚了,凳子都没了
回复 支持 反对

使用道具 举报

1

主题

62

帖子

133

积分

班长

大洋
6736
阅读权限
20
发表于 21-3-10 22:07 | 显示全部楼层
一个sony+radius60,一个sony-radius60,两篇帖子都看看,正好((sony+radius60) + (sony-radius60)) / 2 =sony,学会sony菜单的修改指日可待
nn大佬牛批
回复 支持 反对

使用道具 举报

7

主题

621

帖子

140

积分

班长

大洋
3430
阅读权限
20
发表于 21-3-10 22:23 | 显示全部楼层
前排支持。
回复

使用道具 举报

4

主题

721

帖子

203

积分

排长

大洋
2862
阅读权限
30
发表于 21-3-17 15:09 | 显示全部楼层
还没有去修改过sony的,不过倒是值得借鉴
回复 支持 反对

使用道具 举报

2

主题

96

帖子

25

积分

列兵

大洋
404
阅读权限
10
发表于 21-3-28 02:40 | 显示全部楼层
本帖最后由 keinfsir 于 21-3-28 02:41 编辑

优秀的教程,非常感谢您的分享!我有这部电影,我想更改菜单标签。您知道此菜单是否结合了“ Sony + Radius60”技术吗?

Monster.Hunter.2020.MULTi.COMPLETE.BLURAY-ORCA  (台湾版)
回复 支持 反对

使用道具 举报

2

主题

96

帖子

25

积分

列兵

大洋
404
阅读权限
10
发表于 21-4-9 04:31 | 显示全部楼层
谢谢老师,我将尽力按照您的宏伟教程中的步骤进行操作。
回复 支持 反对

使用道具 举报

1

主题

4870

帖子

480

积分

排长

大洋
5470
阅读权限
30
发表于 21-5-3 15:12 | 显示全部楼层
感谢大佬分享!
回复 支持 反对

使用道具 举报

1

主题

4870

帖子

480

积分

排长

大洋
5470
阅读权限
30
发表于 21-5-3 17:51 | 显示全部楼层
学习了,感谢大佬分享!
回复 支持 反对

使用道具 举报

9

主题

1725

帖子

295

积分

排长

大洋
18761
阅读权限
30
发表于 22-7-4 13:57 | 显示全部楼层
感谢大佬的教程,试着弄一下,看能成功不
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表