1. 程式人生 > >hbuilder的移動端APP如何實現微信支付,求具體流程詳解

hbuilder的移動端APP如何實現微信支付,求具體流程詳解

HBuilder 基座已實現H5 plus的支付API,現已整合支付寶快捷支付平臺。使用支付功能前必須在支付寶網站開通”快捷支付“服務,並配置伺服器生成訂單資訊。 開發指導 支付流程如下:
plus API使用步驟:
1. 呼叫plus.payment.getChannels()獲取系統支援的支付通道;
2. 呼叫plus.payment.request()發起支付請求。 示例程式碼
  1. var channel=null;
  2. // 1. 獲取支付通道
  3. function plusReady(){
  4.     // 獲取支付通道
  5.     plus.payment.getChannels(function(channels){
  6.         channel=channels[0];
  7.     },function(e){
  8.         alert("獲取支付通道失敗:"+e.message);
  9.     });
  10. }
  11. document.addEventListener('plusready',plusReady,false);
  12. var ALIPAYSERVER='http://demo.dcloud.net.cn/helloh5/payment/alipay.php?total=';
  13. var WXPAYSERVER='http://demo.dcloud.net.cn/helloh5/payment/wxpay.php?total=';
  14. // 2. 發起支付請求
  15. function pay(id){
  16.     // 從伺服器請求支付訂單
  17.     var PAYSERVER='';
  18.     if(id=='alipay'){
  19.         PAYSERVER=ALIPAYSERVER;
  20.     }else if(id=='wxpay'){
  21.         PAYSERVER=WXPAYSERVER;
  22.     }else{
  23.         plus.nativeUI.alert("不支援此支付通道!",null,"捐贈");
  24.         return;
  25.     }
  26.     var xhr=new XMLHttpRequest();
  27.     xhr.onreadystatechange=function(){
  28.         switch(xhr.readyState){
  29.             case 4:
  30.             if(xhr.status==200){
  31.                 plus.payment.request(channel,xhr.responseText,function(result){
  32.                     plus.nativeUI.alert("支付成功!",function(){
  33.                         back();
  34.                     });
  35.                 },function(error){
  36.                     plus.nativeUI.alert("支付失敗:" + error.code);
  37.                 });
  38.             }else{
  39.                 alert("獲取訂單資訊失敗!");
  40.             }
  41.             break;
  42.             default:
  43.             break;
  44.         }
  45.     }
  46.     xhr.open('GET',PAYSERVER);
  47.     xhr.send();
  48. }
複製程式碼 注:第二步中獲取到的訂單資料需要在伺服器通過支付寶平臺獲取PID和金鑰生成。 HBuilder應用配置 分享外掛新增方法具體步驟如下:
1. 雙擊應用的manifest.json檔案,選中“使用第三方外掛”
 

Ctrl+S儲存。
  • 點選manifest.json檔案的“程式碼檢視”,在permissions節點下新增Payment節點:
     
  • 在plus -> distribute -> plugins 節點下新增payment節點:
     


    alipay節點下配置支付寶相關資訊
    scheme值為iOS平臺呼叫支付寶的“快捷支付”應用返回時用到的標識,推薦使用小寫字串。
    weixin節點下配置微信支付相關資訊
    appid值為在微信開放平臺申請應用的AppID值。
支付寶功能申請
  • 登入支付寶賬號,簽約申請“移動快捷支付”功能,操作流程參考:
  • 生成金鑰(公鑰和私鑰),並提交到支付寶,參考教程:

    上傳公鑰
微信支付功能申請
  • 使用微信支付功能需到微信開放平臺申請移動應用並開通支付功能

    申請應用後可以獲取AppID和AppSecret值。
  • 開通支付功能後可獲取支付業務伺服器配置資料
    PARTNER:財付通商戶號
    PARTNER_KEY:財付通金鑰
    PAYSIGNKEY:支付簽名金鑰