Android APP 内部捐赠实现(支付宝&微信)
Android APP 内部捐赠实现(支付宝&微信)
目前支持 支付宝和 微信。
项目地址:https://github.com/didikee/AndroidDonate
https://play.google.com/store/apps/details?id=com.didikee.donate.sample
扫描二维码下载demo程序
快速集成
**Step 1: **在你的 项目级别(不是 Module级别) build.gradle
里添加:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
**Step 2: **在你的 Module
级别 build.gradle
里添加:
dependencies {
compile 'com.github.didikee:AndroidDonate:0.1.0'
}
快速使用
通过支付宝捐赠
/**
* 支付宝支付
* @param payCode 收款码后面的字符串;例如:收款二维码里面的字符串为 https://qr.alipay.com/stx00187oxldjvyo3ofaw60 ,则
* payCode = stx00187oxldjvyo3ofaw60
* 注:不区分大小写
*/
private void donateAlipay(String payCode) {
boolean hasInstalledAlipayClient = AlipayDonate.hasInstalledAlipayClient(this);
if (hasInstalledAlipayClient) {
AlipayDonate.startAlipayClient(this, payCode);
}
}
通过微信捐赠
/**
* 需要提前准备好 微信收款码 照片,可通过微信客户端生成
*/
private void donateWeixin() {
InputStream weixinQrIs = getResources().openRawResource(R.raw.didikee_weixin);
String qrPath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "AndroidDonateSample" + File.separator +
"didikee_weixin.png";
WeiXinDonate.saveDonateQrImage2SDCard(qrPath, BitmapFactory.decodeStream(weixinQrIs));
WeiXinDonate.donateViaWeiXin(this, qrPath);
}
注意权限
由于二维码的写入读取SDCard,所以不要忘记加上权限:
<!-- 微信需要往sd卡写入二维码 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!-- 创建与删除文件 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
实现和操作细节
关于支付宝捐赠
关于支付宝捐赠,你需要准备好的是你的收款码,也就是方法中的payCode
。
支付宝比微信好用、灵活、体验好,具体体现在 支付宝可以自定义金额收款,也可以生成商家收款码(商家收款未测试)。
从支付宝首页顶部的收款进入:(如图)
你可以自主选择设置金额和备注,然后保存二维码图片。
下一步就是提取二维码里面的payCode
,我使用的是草料二维码识别:
连接如下:
得到payCode
就可以实际使用了。
附加 -- 商家收款
商家收款的前提是你开通了商家收款的功能(我忘记我什么时候开通了,反正就是开通了),你可以登录网页支付宝,然后依次点击:商家服务 --> 查看商户收款码 --> 保存收款二维码。
最后还是需要执行上面一样的步骤,从收款码中提取出payCode
。
商家的收款界面和普通的转账付款界面略有不同,它是一个 Web 页面:(如下图)
关于微信捐赠
微信的体验不够好,目前只能说勉强能用。
原理是利用微信的二维码扫描支付,在启动的时候将自己的二维码放入相册中,并通知系统更新相册,这样用户就可以选择第一张图片,然后识别图片中的二维码最后完成支付操作。
虽然开发者的操作变少了,但是用户的操作变多了。对用户来说体验就变差了。
附加 -- 二维码图片大小
保存的二维码图片比较大(我保存的119KB)需要压缩裁剪才能放入app中,获取从服务器获取。
最后
如果本文对你有帮助,可以打赏支持。演示项目里就可以直接打赏就可以了 O(∩_∩)O~~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2016-07-29 Android RatingBar 自定义样式