AlipayZeroSdk – 轻量的支付宝转账工具类
这个能做什么?可以在应用中直接跳转到支付宝转账的界面,比复制粘贴支付宝账号更加优雅、安全。 然而它的功能就是直接跳转到转账界面,不会获得支付结果。 为什么我做这个?支付宝的接口基本都是对企业用户开放的,对于只想做一个捐赠入口的个人独立开发者来说没必要去弄这么多东西。
我是一个业余的 Android 开发者,常常会造一些轮子,轮子里面的关于界面一般都会加上一个支付宝捐赠地址,给喜欢我的应用且愿意给出物质上支持的网(lao)友(ye)一个支持方式。 以前我都是直接放一个地址让用户去复制粘贴,显然这种方式对用户很不友好(以至于不能痛快地剁手),搞不好还会被 Google Play 市场下架。想起了以前做过一个转账的二维码,浏览器打开二维码的解析结果后会从一个网页跳转进客户端的转账界面,就打算好好利用一下这个网页,发现网页用了 Android Intents with Chrome,按道理不应该只是 Chrome 的特性,于是就从 Chromium 源码中找到
- Intent.parseUri(params.getUrl(), Intent.URI_INTENT_SCHEME);
复制代码
这段代码,马上打开 Android Studio 试了试,效果非常赞,就打算写一个更加方便的工具,省去模拟 Android UA 查看网页源码获取 Intent Uri 的麻烦(其实也没多麻烦~)。 二维码从何来?
很久以前支付宝就做了一个
https://fama.alipay.com/
用来生成转账二维码的平台,允许个人和商家生成二维码,现在不知道为什么没有生成过二维码的用户用不了了(我的也没有新建二维码的入口),所以以前弄过二维码的朋友应该要庆幸一下,AlipayZeroSdk 库必须需要这个站点生成的二维码,手机生成的收款二维码不行(收款二维码还在研究如何使用,遇到了跳转进去没有转账界面的问题)。
在二维码平台直接登录的话就变成白板一片,但是不要登录直接点收款码下面的创建收款码就可以进去创建下载了。
感觉也可以试试直接进入这个创建收款码的链接
https://fama.alipay.com/qrcode/qrcodelist.htm?qrCodeType=P
第二步需要做什么?通过二维码识别工具获取 Raw Url,不能打开这个地址(即不能用微信、QQ、支付宝的扫一扫),这里推荐一个网站识别二维码:http://cli.im/deqr/
获得 Raw Url,我们就取最后那段英文数字混合的字符(如图取 aehvyvf4taua18zo6e),先记下这个参数。
最后一步了!按照 AlipayZeroSdk 的 Github Repo 中 README.md 的方法将库导入到你的项目中, 调用 - AlipayZeroSdk.hasInstalledAlipayClient(Context)
复制代码确保用户已经安装支付宝客户端,便以做出相对的应对措施。 返回结果为 true 后,我们就用上刚才那个参数 - AlipayZeroSdk.startAlipayClient(Context, XXXXXXXXXXXXXX)
复制代码
现在我们就可以看到跳转到了支付宝的转账界面~
Demo
到 https://github.com/fython/AlipayZeroSdk/releases[color=rgba(0, 0, 0, 0.843137)] 获取最新的 Demo Apk
原文地址:
http://blog.feng.moe/2016/08/29/alipay-zerosdk/
AlipayZeroSdk – 轻量的支付宝转账工具类
http://bbs.jiandaima.com/thread-568-1-1.html
|