前言
笔者推出免Root破解App工具也有一段时间了,但一直没有介绍详细的应用案例。本文介绍如何利用实现一个非常实用的功能,腾讯视频App和爱奇艺App去广告功能。
如何去广告
为了破解腾讯视频,首先我们需要反编译Apk,获取Java源码。庆幸的是腾讯视频没有做加固处理,使用jadx工具可以反编译成功。
获取到源码后,通过分析源码,我们发现一个叫做的类:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// com.tencent.qqlive.ona.player.VideoInfo.java
public class VideoInfo {
....
private boolean isAd;
private boolean isAdSkip;
private boolean isAutoPlay;
private boolean isAutoPlayNext;
private boolean isBlockAutoPlay;
private boolean isCharged;
....
private boolean isHotChannelPlayer;
private boolean isHotspot;
private boolean isMiniVideo;
private boolean isNotStroeWatchedHistory;
private boolean isTryWatch;
private boolean isUserCheckedMobileNetWork;
private boolean isVip7CanPlay;
....
public boolean isAdSkip() {
return this.isAdSkip;
}
....
}
这个类没有做混淆处理,很可能是从服务端返回的每个video的信息,其中有一个成员变量叫做,很可能就是用来控制广告播放与否的字段。
为了验证这种猜想,写个插件,将获取这个参数值的方法掉,使其返回true。Hook代码如下:
1
2
3
4
5
6
7
8
9
// kotlin
findAndHookMethod("com.tencent.qqlive.ona.player.VideoInfo",
classLoader,
"isAdSkip",
object : XC_MethodHook() {
override fun beforeHookedMethod(param: MethodHookParam) {
param.result = true
}
})
让重打包后的腾讯视频app加载这个插件,启动后发现,播放任何一个视频都没有广告了,因此,成功实现腾讯视频广告破解.
爱奇艺的破解过程类似,只是破解的点不太一样,爱奇艺app中视频信息的实体类中并没有包含类似的变量。爱奇艺反编译后的代码比腾讯视频复杂很多,而且很多核心的代码都是在中实现的,因此暂时没能完美实现广告破解。
通过不断尝试,发现hook 类的方法,使其返回空,可以实现二次打开视频无广告。也就是说,需要点击点击一个视频进入播放页,再返回,再进入此视频播放页,此时便无广告。具体hook代码如下:
1
2
3
4
5
6
7
8
9
10
// kotlin
XposedHelpers.findAndHookMethod("com.iqiyi.video.qyplayersdk.player.state.StateManager",
classLoader,
"updateVideoType",
Int::class.java,
object : XC_MethodReplacement() {
override fun replaceHookedMethod(param: MethodHookParam?): Any? {
return null
}
})
插件
有了以上的hook代码,写成一个插件就很容易了。
完整代码已经上传到了笔者的上,地址为:
编译出来的插件apk可以在页面下载:
利用制作无广告App
是笔者开发的一个免Root加载插件的工具。利用和上面的插件apk可以制作一个无广告的腾讯视频App和爱奇艺App,具体使用流程如下:
下载 Jar包,下载链接为:;下载腾讯视频apk(爱奇艺apk)以及上文的无广告插件apk;在PC的终端执行如下命令:$ java -jar ../.jar ../.apk -xm ../.apk命令执行完成之后,在.apk相同的目录下,会生成一个名称为--.apk,卸载掉设备上原来的apk,安装这个无广告的apk即可。下载
为了方便大家使用,笔者通过上面方法,制作出了这个两个无广告apk,百度网盘下载链接为:
腾讯视频无广告版本:爱奇艺无广告版本:
关注公众号葵花宝典可获取到文件提取码。
再次温馨提醒:爱奇艺需要进入播放页后退出播放页,再次进入才会无广告。
文件提取码
云衔科技是一家专注于企业数字化广告营销解决方案的服务商。公司凭借深厚的行业经验和专业技术能力,致力于为企业客户提供全方位、更高效的数字化广告营销与运营服务。