超星雅儿跳课Xposed模块开发

目的实现:超星雅儿跳课Xposed模块开发

前言

上大学的时候大多数的本科或者专科学生会在 超星XX选一门课程作为通修课,然后下载app看视频。最恶心的事情是什么?不能拖动进度条和快进 除非你看完了再看第二边。 而我们利用HOOK技术实现快速看完视频。。。

以下内容仅供学习,禁止商业用途。。。
适用超星版本:3.0.2(现在最新的了吧)
以下教程因为涉及大多高校正常教学制度。所以教程加密并且不公开。核心教程和源码地址(已经加密):

我的思路一: 先不管 三七二十一 反编译app 很可惜 加固了。。。脱壳拖了几天最后把自己裤子了睡觉

思路二:抓取数据包 然后分析访问接口的规则 然后自己把自己本地架设成远程访问服务器。

思路三:HOOK

思路一走不通,对于思路二我在想 核心接口都用了某个加密规则加密了吧?因为高考数学没到140所以放弃吧。我最后考虑最后一个。

提示:我原本思路二是解析加密规则麻烦,返现app某个接口没有加密,后来英语四级没时间咯,所以只实现HOOK。。
有人问我 这一步有人问我怎么做。这里提供一个小思路 ,我们电脑访问www.baidu.com ,先会到电脑C:\Windows\System32\drivers\etc\hosts 寻找域名和端口的射影,如果不存在 会像网络的DNS(域名系统)寻找。假设app 访问 www.XXXX.com 你改下射影文件不就好了?(别问我这不是windos下的修改方法,稍微变通下你懂的)然后你反回一段完成此视频的信息,那么你就可以拖动进度条了。

HOOK初探:
这里是基于XPosed编写的。
我的HOOK思路之一:首先查看视频播放界面。DDMS有dump view工具。
然后看到如下界面:
这里写图片描述

看到一个SeekBar,我就想着开发者是不是给SeekBar添加一个监听,判断是不是用户手动拖动的(监听回调有一个参数判断是不是手动滑动的进度条)。
1 如果是用户手动拖动的那么判断是否看过视频,如果没看过,禁止拖动
2 如果不是那么不管

结论:失败。。。。

tip:布局中还有个Seekbar那时候我获取错了,弄了半天

直接反射修改SeekBar 进度。

结论:失败

tip:得到思路 作者应该每次拖动的时候判断 你以上看到哪了,或者是否看完了。

所以。。。。。。 以下思路加密提供

思路和源码(已加密)

加入讨论

电子邮件地址不会被公开。 必填项已用*标注