
某Q钱包账单实时监控App开发——WebView Cookie劫持API轮询全程干货 | 建议收藏 | 文末有彩蛋 一、需求背景老板每天在某Q收几百笔款对账到崩溃。需要一个App自动监控钱包收款有新进账实时推送。方案一句话WebView登录某Q → 偷Cookie → 轮询账单API → 新记录上报。二、抓包定位真实API某Q钱包账单页走的内部网关抓包拿到完整接口GET https://myun.tenpay.com/cgi-bin/clientv1.0/qwallet_record_list.cgi关键请求参数参数值示例说明g_tk1807869249CSRF Token由skey计算得出uin3911159719QQ号limit15每页条数offset0分页偏移s_time2025-07-04查询起始日期time_type0时间筛选类型source_type7来源类型7全部bill_type00全部 3支出 4收入Cookie头实际抓到的uino3911159719 skeyjYbfhRvUb p_uino3911159719 p_skey-cmSBydODeDzr04fbm8eu7sfjhdBgMob9s9Pmf3u56s_ pt4_tokenBQaCpUA-MOsKwfeIlKfPR**D72yUvOwICBoSJdfs9I4_三、g_tk 算法——最容易踩的坑g_tk是整个请求的门票不带或算错直接retcode ! 0。算法非常简单对skey去掉前缀做逐字符哈希累加标准hash33算法。hash 5381 遍历 skey 每个字符: hash (hash 5) 字符ASCII码 最终 g_tk hash 0x7FFFFFFF以skeyjYbfhRvUb为例去掉后对jYbfhRvUb做 hash33最终得到1807869249——和抓包完全吻合。⚡轮询时注意skey不变则g_tk不变一次计算全程复用。但如果用户重新登录换了skey必须重新算。四、响应结构拆解真实响应截取第一条{retcode:0,retmsg:OK,ret_num:15,true_name:罗**,records:[{bill_type:3,amount:100,payer_id:3911159719,payer_nickname:jaefern,buyer_id:1415662711,buyer_nickname:Luotron,desc:转账-转给Luotron,create_time:2026-07-05 21:24:26,trans_id:100006290126070500098331867278071074,trade_state:303,source_type:1}]}收/支判断逻辑bill_type含义payer_idbuyer_id你这边是3转账你自己对方转出❌4转账对方你自己收入✅所以监控逻辑很简单遍历 records找出bill_type 4且create_time晚于上次最新时间的记录就是新收款。其他有用字段字段用途trans_id唯一流水号做去重amount金额元字符串payer_nickname付款方昵称trade_state303交易成功true_name钱包实名可用于校验是否本人账户五、完整技术链路WebView H5登录 ↓ CookieManager.getCookie(https://qq.com) ↓ 捞出 skey / p_skey / uin / p_uin / pt4_token ↓ 加密持久化EncryptedSharedPreferences ↓ 计算 g_tk hash33(skey去) ↓ 每10秒轮询 GET /qwallet_record_list.cgi ?g_tkxxxuinxxxlimit15offset0s_timetoday Cookie: skeyxxx; p_skeyxxx; ... ↓ retcode0 → 遍历records ↓ 找出 bill_type4 且 create_time lastTs 的记录 ↓ 新收款 → 上报服务器 本地通知 → 更新lastTs ↓ retcode!0 → Cookie过期 → 引导重登录六、五个关键坑#坑解法1g_tk 算错hash33(skey去掉) 0x7FFFFFFF写死别用第三方库2p_skey过期轮询到retcode ! 0立刻停弹窗引导WebView重登录3DomStorage没开setDomStorageEnabled(true)登录页JS依赖它4轮询太快风控10~15秒一次贪快p_skey被踢5Cookie明文存储EncryptedSharedPreferencesAES-256加密七、总结这套方案不限于某Q钱包。任何通过WebView H5登录、Cookie鉴权的业务都能套用Cookie劫持 → 内部API抓包 → 增量轮询 → 实时监控核心就三样抠出Cookie、算对g_tk、控制轮询节奏。