111

看的懂的闭着眼都会,这里主要面向小白

const-wide v0, 0xf4849500L

里面0xf4849500L是时间戳: 4107838464 对应现实时间:2099年12月31日

0x0 = 0

0x1 = 1

 

大纲:

0. 找到判断VIP函数位置

1. 修改isvip 直接返回true 或 1 (是不是vip?是!)

2. 修改getUser_end_time 直接返回0xf4849500L (会员什么时候过期?2099年!)

3. 找到checkPermission方法名 把里 除play()以外的所有内容全部删了

4. 保存-退出-签名-安装 一气呵成

注意: 没有登录是无法显示VIP的并且也不能缓存,需要登录后才能正常使用。 

 

其他细节:

搜索isvip找不到?

1. 搜索类型: “代码”

2. 勾选 “搜索子目录”

3. 取消勾选 “大小写匹配”

4. 取消勾选 “正则表达式”

5. 取消勾选 “完全匹配”

 

checkPermission细节:

定位到Lcom/sjm/zhuanzhuan/widget/PlayPermissionView下的checkPermission()方法名直接改成如下内容

 

.method private checkPermission()V

    .registers 2

 

    .line 1

    invoke-direct {p0}, Lcom/sjm/zhuanzhuan/widget/PlayPermissionView;->play()V

 

    return-void

.end method

 

原理: 点击播放后 管你有没有登录有没有VIP直接调用play()方法名开始播放视频。

 

三元运算:

v0 == 1 ? true : false

解读:如果v0等于1 返回true,反之返回false觉得有帮助的,就别交出三连了[doge],去爽吧

给TA打赏
共{{data.count}}人
人已打赏
未分类

5

2025-5-12 0:09:45

未分类

6

2025-5-12 0:14:53

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索