本帖最后由 Defender 于 2019-6-10 10:28 编辑
1.找到主界面的活动LauncherActivity
2.在LauncherActivity里找到该活动的onCreate方法
3. 在onCreate方法找到invoke-direct {p0}, Lcom/cyberlink/actiondirector/page/launcher/LauncherActivity;->H()V这句代码(至于为什么是这句,因为前面的我都看了,只有这符合)
4.找到com/cyberlink/actiondirector/page/launcher/LauncherActivity路径下的H方法,简单看一下它的代码,发现它对主界面的视图控件有个是否隐藏的判断
[Java] 纯文本查看 复制代码 private void H() {
if (k.f()) {
findViewById(0x7f1000de).setVisibility(8);
findViewById(0x7f1000e7).setVisibility(8);
findViewById(0x7f1000e8).setVisibility(8);
findViewById(0x7f1000e9).setVisibility(0);
findViewById(0x7f1000ea).setVisibility(0);
return;
}
RelativeLayout relativeLayout = (RelativeLayout) findViewById(0x7f1000e7);
if (this.u == null) {
this.u = new com.cyberlink.actiondirector.ads.b(this, relativeLayout, this.D);
}
if (q.a("GDRP_ACCEPTED", false, getApplicationContext())) {
this.u.a();
}
}
5.找到判断来源位于com/cyberlink/actiondirector/util/k下的f方法,看见它会对该类下的h和g方法的值进行判断,那么修改就简单了
[Java] 纯文本查看 复制代码 public static boolean f() {
if (!h()) {
if (!g()) {
return false;
}
}
return true;
}
6.在h或者g方法的return v0 前面加一句const/4 v0,0x1就行了,改一处就行了,因为只要有一个是正确的那么它就直接返回true了....
[Java] 纯文本查看 复制代码 public static boolean g() {
boolean z = k().getBoolean("IAP.SUBSCRIPTION.KEY.PREF", false);
return true;
}
[Java] 纯文本查看 复制代码 public static boolean h() {
boolean z = k().getBoolean("IAP.UPGRADE.KEY.PREF", false);
return true;
}
就这样将就看吧,不懂的可以问我
原版链接:https://www.lanzouj.com/i4dyr6j |