接入微信和支付寶支付

1.添加微信與支付寶第三方集成

//支付寶  jar包
implementation files('libs/alipaySdk-20180601.jar')
   // 微信
implementation 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+'

2.在MyApplication中初始化微信

    private static IWXAPI api;

    public static IWXAPI getWXApi() {
        return api;
    }

       在MyApplication的onCreat方法中創建

    api = WXAPIFactory.createWXAPI(getApplicationContext(),null);

3.創建wxapi包添加下面兩個java文件

https://pan.baidu.com/s/13gSDukbThC7nNKLuo6-RmQ

https://pan.baidu.com/s/16e504YZyFYnag87k8aOF8w

4.創建utils包添加下面四個java文件

https://pan.baidu.com/s/10kxfcTckdomLFo_cQDDpeA

https://pan.baidu.com/s/1f7NbIZHzqaGnfAUoPGOGwA

https://pan.baidu.com/s/10QBnfK1xSW00FLjxV47vyg

https://pan.baidu.com/s/1SEXCFljtZVTwLay_Y3mEuA

5.代碼中調用對應方法

/**
     * 支付寶支付
     */
    private void alipayPay() {
        AlipayUtils alipay = new AlipayUtils(VipActivity.this, "傳入服務器返回數據");
        alipay.setAlipayUtilsCallback(new AlipayUtils.AlipayUtilsCallback() {
            @Override
            public void onComplete() {
                ToastUtils.show("支付成功");
            }
        });
        alipay.pay();
    }

    /**
     * 微信支付
     */
    private void wxPay() {

        WXReturnInfo wxReturnInfo = new WXReturnInfo();
         /**
         {MD5:  426FF5B2D4EAFF7D0B4E4659B254C6E5
         appid = wx81146dd5825947ff;
         noncestr = 83Bd3x4vPs3iva1Q;
         package = "Sign=WXPay";
         partnerid = 1533943061;
         prepayid = wx19173521296076508051fb0c1388979100;
         sign = A65C1EAFD9975B14CA9852EC46B98AFF;
         timestamp = 1568885721;
         }
         * }
         * */
                   // wxReturnInfo.setOrderId("8448321565597421968443730");
                    wxReturnInfo.setAppid("wx81146dd5825947ff");
                    wxReturnInfo.setNoncestr("83Bd3x4vPs3iva1Q");
                    wxReturnInfo.setPartnerid("1533943061");
                    wxReturnInfo.setPrepayid("wx19173521296076508051fb0c1388979100");
                    wxReturnInfo.setSign("A65C1EAFD9975B14CA9852EC46B98AFF");
                    wxReturnInfo.setTimestamp("1568885721");


        WXPayUtils.wechatPay(wxReturnInfo);
        WXPayEntryActivity.wxCallback = new WXPayEntryActivity.WxCallback() {
            @Override
            public void onSucceed() {
                ToastUtils.show("支付成功");
            }

            @Override
            public void onancel() {
                ToastUtils.show("支付失敗");
            }
        };
    }

6.在AndroidManifest.xml中添加

<!--// 微信和支付寶支付。-->
<activity
    android:name=".wxapi.WXEntryActivity"
    android:launchMode="singleTop"
    android:exported="true"></activity>
<activity
    android:name=".wxapi.WXPayEntryActivity"
    android:launchMode="singleTop"
    android:exported="true"></activity>
<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>

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章