微信支付宝xposed个人收款免签支付源码
源码介绍:
个人免签支付是指使用自己的微信支付宝账号作为个人网站的收款账号,网站订单支付成功后,网站能实时收到成功回调信息。
系统基于xposed逆向微信、支付宝、云闪付来实现个人收款免签支付。(tag:个人收款,免签支付,微信免签,支付宝免签,云闪付免签)
源码地址:https://github.com/wxs2/xposed-pay
目前支持如下免签支付:
- 微信二维码 、支付宝二维码、支付宝红包、支付宝主动收款、支付宝银行卡、云闪付
系统介绍:
- 使用个人支付宝或微信账号收款,无须公司资质接入支付宝微信平台
- 基于xposed逆向支付宝微信App实现自动生成指定金额二维码,支付成功后自动回调
- 系统包含PHP后台和Android监听客户端
- 支持多账号,多客户端运行
- 自动H5唤醒:支付宝红包、支付宝主动收款均支持自动唤醒原生支付宝支付,无须手动扫码。该功能请使用手机浏览器测试,生码后点击 <打开支付宝>即可
运行效果:
核心代码:
hook微信二维码生成函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | private void hookQRCreat( final ClassLoader appClassLoader, final Context context) { Class<?> clazz = XposedHelpers.findClass( "com.tencent.mm.plugin.collect.b.s" , appClassLoader); XposedBridge.hookAllMethods(clazz, "a" , new XC_MethodHook() { @Override protected void beforeHookedMethod(MethodHookParam param) throws Throwable { } @Override protected void afterHookedMethod(MethodHookParam param) { try { LogUtils.log( "hookQRCreat start:" ); QrBean qrBean = new QrBean(); qrBean.setChannel(QrBean.WECHAT); Field moneyField = XposedHelpers.findField(param.thisObject.getClass(), "kcp" ); Double money = (Double) moneyField.get(param.thisObject); LogUtils.log( "hookQRCreat money:" +money.toString()); Field markField = XposedHelpers.findField(param.thisObject.getClass(), "desc" ); String mark = (String) markField.get(param.thisObject); LogUtils.log( "hookQRCreat mark:" +mark); Field payurlField = XposedHelpers.findField(param.thisObject.getClass(), "kco" ); String payurl = (String) payurlField.get(param.thisObject); LogUtils.log( "hookQRCreat payurl:" +payurl); qrBean.setMark_sell(mark); qrBean.setUrl(payurl); LogUtils.log( "com.tencent.mm.plugin.collect.b.s qrBean:" + JSON.toJSONString(qrBean)); Intent broadCastIntent = new Intent(); broadCastIntent.putExtra( "data" , qrBean.toString()); broadCastIntent.setAction(HookMain.RECEIVE_QR_WECHAT); // broadCastIntent.setComponent( new ComponentName( "com.sjk.tpay" , // "com.sjk.tpay.ReceiverMain") ); context.sendBroadcast(broadCastIntent); LogUtils.log( "hookQRCreat end:" +JSON.toJSONString(param)); } catch (Exception e){ LogUtils.log( "hookQRCreat exception:" +Log.getStackTraceString(e)); } } }); } |
hook支付宝二维码生成函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | private void hookQRCreat( final ClassLoader appClassLoader, final Context context) { XposedHelpers.findAndHookMethod( "com.alipay.mobile.payee.ui.PayeeQRSetMoneyActivity" , appClassLoader, "a" , XposedHelpers.findClass( "com.alipay.transferprod.rpc.result.ConsultSetAmountRes" , appClassLoader), new XC_MethodHook() { @Override protected void afterHookedMethod(MethodHookParam param) throws Throwable { Field moneyField = XposedHelpers.findField(param.thisObject.getClass(), "g" ); String money = (String) moneyField.get(param.thisObject); Field markField = XposedHelpers.findField(param.thisObject.getClass(), "c" ); Object markObject = markField.get(param.thisObject); String mark = (String) XposedHelpers.callMethod(markObject, "getUbbStr" ); Object consultSetAmountRes = param.args[ 0 ]; Field consultField = XposedHelpers.findField(consultSetAmountRes.getClass(), "qrCodeUrl" ); String payurl = (String) consultField.get(consultSetAmountRes); Field consultField2 = XposedHelpers.findField(consultSetAmountRes .getClass(), "printQrCodeUrl" ); String payurloffline = (String) consultField2.get(consultSetAmountRes); QrBean qrBean = new QrBean(); qrBean.setChannel(QrBean.ALIPAY); qrBean.setMark_sell(mark); qrBean.setUrl(payurl); Intent broadCastIntent = new Intent() .putExtra( "data" , qrBean.toString()) .setAction(RECEIVE_QR_ALIPAY); context.sendBroadcast(broadCastIntent); } }); } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」