客戶方APP嵌入拉卡拉提供的webview或者LKLWebObject方法

lakala 7個(gè)月前 ( 11-09 ) 406

本文介紹客戶方APP嵌入拉卡拉提供的webview或者LKLWebObject方法類:

示例代碼

private class LklJsInterface {
   @JavascriptInterface
       public void jumpAlipay(String url){
           Intent intent = new Intent();
           intent.setAction("android.intent.action.VIEW");
           Uri content_url = Uri.parse(url);
           intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
           intent.setData(content_url);
           startActivity(intent);
}
       // 微信返回到APP時(shí)會(huì)自帶一個(gè)遮罩 需要在onResp方法內(nèi)調(diào)用finish()
       @JavascriptInterface
       public void jumpWxApplet(String userName,String path,String universalLink,int programType) {
   String wxAppid = "wx000000000xxxxxx"; // 填移動(dòng)應(yīng)用(App)的 AppId,非小程序的 AppID
           IWXAPI api = WXAPIFactory.createWXAPI(LklWebViewActivity.this, wxAppid);
           if(api.isWXAppInstalled()){
               WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
               req.userName = userName;//BuildConfig.wxMinUserName; // 填小程序原始id
               req.path = path;//BuildConfig.wxMinPage;                  ////拉起小程序頁(yè)面的可帶參路徑,不填默認(rèn)拉起小程序首頁(yè),對(duì)于小游戲,可以只傳入 query 部分,來(lái)實(shí)現(xiàn)傳參效果,如:傳入 "?foo=bar"。
               req.miniprogramType = programType;//Integer.parseInt(BuildConfig.wxLaunchMin);// 可選打開(kāi) 開(kāi)發(fā)版,體驗(yàn)版和正式版
               api.sendReq(req);
}

else {
   ToastUtils.toast(LklWebViewActivity.this, R.string.wx_install_un);
}
       }

@JavascriptInterface
       public void closeWindow() {
           // 做相關(guān)業(yè)務(wù)操作 例如:跳轉(zhuǎn)或返回到指定頁(yè)面
   finish();
}
   }

復(fù)制


closeWindow方法觸發(fā)條件:

  1. 收銀臺(tái)模板配置支付完成頁(yè)標(biāo)識(shí)直接跳至客戶上送的地址,且收銀臺(tái)下單接口不上送callback_url;收銀臺(tái)H5查詢到訂單狀態(tài)為終態(tài)時(shí)觸發(fā);

    1. 訂單終態(tài):付款成功、已過(guò)期、支付失敗

注意:訂單支付狀態(tài)APP應(yīng)以自行查詢后臺(tái)接口為準(zhǔn)

收銀臺(tái)下單

  • webview打開(kāi)收銀臺(tái)H5頁(yè)面

  • 收銀臺(tái)H5獲取商戶支付權(quán)限

  • 選擇支付寶支付

    • 收銀臺(tái)H5預(yù)下單

    • 收銀臺(tái)H5調(diào)用webview提供的jumpAlipay方法打開(kāi)支付寶付款(scheme方式)

  • 選擇微信支付

    • 收銀臺(tái)H5調(diào)用webview提供的jumpWxApplet方法打開(kāi)拉卡拉收款寶小程序 微信官方文檔

    • 收款寶小程序做預(yù)下單付款

代碼下載

LklWebViewActivity.java



銀聯(lián)統(tǒng)一收銀臺(tái)

使用銀聯(lián)統(tǒng)一收銀臺(tái)下單支付方式(銀聯(lián)支付, 手機(jī)Pay) 需接入如下SDK:

接入方法

  1. lkl-union-pay.aar為安卓sdk包

  2. 代碼混淆忽略:

    -keep class com.lakala.unionpay.**{*;}-keep class kotlin.**{*;}復(fù)制
  3. LKLUnionCashier 類為銀聯(lián)支付入口類,具體集成方式如下圖:

40e88b418497e887ecde48440553859f_1693997507802672.png936556b6b1b1ea07c0557028a3111960_1693997507450005.png


支付結(jié)果以收銀臺(tái)系統(tǒng)后臺(tái)回調(diào)結(jié)果為準(zhǔn)

SDK文件下載

lkl-union-pay.aar


The End