硕士生
 
- 金币
- 3830
- 好评
- 25
- 信誉
- 120
|
本帖最后由 tuandgame 于 2025-12-3 19:42 编辑
外网软件。因为涉及某些问题,所以我尽量模糊的讲 【纯理论向】本地签到“一签签一年”到底在哪动手?
1. 签到逻辑不在按钮,也不在 XML,而在 Activity 分发请求 的协程里。
反编译后顺着 `GetRewardActivity$main$2$2` 这个匿名协程类找,能看见它 先读日期 → 对比今天 → 未通过就 +30 min → 写回今天日期 的完整流程。
2. 关键三步:
- 读日期:通过 `UiStore` 的 `checkIn$delegate` 拿到上次保存的 `"yyyy-MM-dd"`。
- 加时长:把 `restTime` 整数秒读出,原代码 `add-int/lit16 0x708`(+30 min)。
- 写日期:再用 `SimpleDateFormat` 把今天写回 SP,下次对比用。
3. 定位口诀:
“找协程、找 delegate、找 add-int”——这三处一旦对齐,就能一次性把 30 min 换成 任意秒数;把 add 换成 const 即可实现“一签签一年”。
4. 改完别忘重新打包签名,本地计时器直接跳到 365 天,服务器不校验就长期有效;溢出上限 68 年,别超过 `0x7FFFFFFF` 即可。
——理论讲完,动手部分自行发挥 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|