一款集成支付宝、微信支付的Java源码,支持安卓、苹果,maven项目可以看看
- **使用方法**
- ### 1、引入
- “`
- compile ‘com.javen205.jpay:jpaysdk:latest.release.here’
- “`
- ### 2. Android Manifest配置
- ##### 2.1权限声明
- “`
- <uses-permission android:name="android.permission.INTERNET"/>
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
- <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
- <uses-permission android:name="android.permission.READ_PHONE_STATE" />
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
- “`
- ##### 2.2注册activity
- `application`节点添加如下类容
- “`
- <!– 微信支付 –>
- <activity
- android:name="com.javen205.jpay.weixin.WXPayEntryActivity"
- android:configChanges="orientation|keyboardHidden|navigation|screenSize"
- android:launchMode="singleTop"
- android:theme="@android:style/Theme.Translucent.NoTitleBar" />
- <activity-alias
- android:name=".wxapi.WXPayEntryActivity"
- android:exported="true"
- android:targetActivity="com.javen205.jpay.weixin.WXPayEntryActivity" />
- <!– 微信支付 end –>
- <!– alipay sdk begin –>
- <activity
- android:name="com.alipay.sdk.app.H5PayActivity"
- android:configChanges="orientation|keyboardHidden|navigation|screenSize"
- android:exported="false"
- android:screenOrientation="behind"
- android:windowSoftInputMode="adjustResize|stateHidden" >
- </activity>
- <activity
- android:name="com.alipay.sdk.app.H5AuthActivity"
- android:configChanges="orientation|keyboardHidden|navigation"
- android:exported="false"
- android:screenOrientation="behind"
- android:windowSoftInputMode="adjustResize|stateHidden" >
- </activity>
- <!– alipay sdk end –>
- “`
- ### 3. 发起支付
- ##### 3.1 微信支付
- “`
- JPay.getIntance(mContext).toPay(JPay.PayMode.WXPAY, payParameters, new JPay.JPayListener() {
- @Override
- public void onPaySuccess() {
- Toast.makeText(mContext, "支付成功", Toast.LENGTH_SHORT).show()
- }
- @Override
- public void onPayError(int error_code, String message) {
- Toast.makeText(mContext, "支付失败>"+error_code+" "+ message, Toast.LENGTH_SHORT).show();
- }
- @Override
- public void onPayCancel() {
- Toast.makeText(mContext, "取消了支付", Toast.LENGTH_SHORT).show();
- }
- });
- “`
- `payParameters` 为JSON字符串格式如下:
- “`
- {
- "appId": "",
- "partnerId": "",
- "prepayId": "",
- "sign": "",
- "nonceStr" : "",
- "timeStamp": ""
- }
- “`
- 或者
- “`
- JPay.getIntance(mContext).toWxPay(appId, partnerId, prepayId, nonceStr, timeStamp, sign, new JPay.JPayListener() {
- @Override
- public void onPaySuccess() {
- Toast.makeText(mContext, "支付成功", Toast.LENGTH_SHORT).show();
- }
- @Override
- public void onPayError(int error_code, String message) {
- Toast.makeText(mContext, "支付失败>"+error_code+" "+ message, Toast.LENGTH_SHORT).show();
- }
- @Override
- public void onPayCancel() {
- Toast.makeText(mContext, "取消了支付", Toast.LENGTH_SHORT).show();
- }
- });
- “`
- ##### 3.2 支付宝支付
- “`
- JPay.getIntance(mContext).toPay(JPay.PayMode.ALIPAY, orderInfo, new JPay.JPayListener() {
- @Override
- public void onPaySuccess() {
- Toast.makeText(mContext, "支付成功", Toast.LENGTH_SHORT).show();
- }
- @Override
- public void onPayError(int error_code, String message) {
- Toast.makeText(mContext, "支付失败>"+error_code+" "+ message, Toast.LENGTH_SHORT).show();
- }
- @Override
- public void onPayCancel() {
- Toast.makeText(mContext, "取消了支付", Toast.LENGTH_SHORT).show();
- }
- });
- “`
- 或者
- “`
- Alipay.getInstance(mContext).startAliPay(orderInfo, new JPay.JPayListener() {
- @Override
- public void onPaySuccess() {
- }
- @Override
- public void onPayError(int error_code, String message) {
- }
- @Override
- public void onPayCancel() {
- }
- });
- “`
- ### 4.案例的使用
- > appId以及相关的key我们都从服务端获取
- #### 4.1 客户端使用说明
- 1. 将`AndroidManifest.xml` 的包名修改为申请应用的包名
- 2. 将应用中的`build.gradle`的 `applicationId`修改为申请应用的包名
- 3. 测试的时候修改默认的签名key
- > 将key复制到项目的根目录(app)中并修改`buildTypes` 配置如下
- “`
- signingConfigs {
- release {
- storeFile file("wxkey")
- storePassword ‘123456’
- keyAlias ‘1’
- keyPassword ‘123456’
- }
- }
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’
- }
- debug {
- signingConfig signingConfigs.release
- }
- }
常见问题FAQ
- 源码等资源都是完整的可运营的吗?
- 千图巨创园资源分享目的是学习研究使用,资源由会员分享及编辑人员整理后发布,请勿商用!
再次申明一下,站点所有数据仅供会员学习、参考、研究使用,不得商用!如果你对资源感觉比较满意,建议您购买正版程序或者最新的教程,以便获取更好的技术支持。
- 你们提供技术支持吗?
- 千图巨创目前资源众多,如果您有项目外包二开需求,请联系客服。我们不对特定资源提供技术支持。如有技术需求请加QQ群与网友互动交流
- 想购买你们的终身会员,如果你们后期关站了怎么办?
- 感谢您的关注,目前vip.qiantukt.cn域名注册已经超过10年并且我们有自己的项目技术团队,千图巨创站点只是方便项目技术查阅资料使用,对外没有盈利需求。目前至可预见的未来一段时间,我们没有关站的可能。如果出现政策或者其他原因导致vip.qiantukt.cn无法正常运行,我们承诺,凡事在有效期内的终身会员及年会员都会收到一份完整的站点数据!