Android MyCard支付
Posted 帅次
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android MyCard支付相关的知识,希望对你有一定的参考价值。
MyCard支付:
1、通过商务联系MyCard进行技术对接,获得最新MyCardPaySDK.jar和接入文档
2、导入MyCardPaySDK.jar
3、根据MyCard提供文档设置androidManifest.xml
4、根据自身需求确定是走SDK支付方式还是WebView支付方式
4-1、SDK支付方式
MyCardSDK sdk = new MyCardSDK(activity);
//flag true代表测试环境,false代表正式环境
sdk.StartPayActivityForResult(flag, bean.getAuthCode());
// 通过onActivityResult接收SDK結果
if (requestCode == Config.Payment_RequestCode)
if( resultCode == -1)
JSONObject js = null;
try
js = new JSONObject(data.getStringExtra(Config.PaySDK_Result));
MLog.e(data.getStringExtra(Config.PaySDK_Result));
if (js.optInt("returnCode") == 1 && js.optInt("payResult") == 3)
String orderNo = js.getString("facTradeSeq");
//进行你的操作
catch (JSONException e)
e.printStackTrace();
catch (Exception e)
else
4-2、WEB支付方式
使用 HTTP POST / GET 傳送參數测试环境链接(http(s)://testb2b.mycard520.com.tw/MyBillingPay/v1.2/*)、正式环境链接(https://b2b.mycard520.com.tw/MyBillingPay/v1.2/*)不搞混乱就好,后面拼接字段需要注意(当然让服务端拼接好所有参数把连接扔给我们最好) 这个是 必须要接入的,使用 MyCard、街口、Line Pay 等第三方 App 進行支付,需進行下列設定:
private class MyWebViewClient extends WebViewClient
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
if (url.startsWith("http:") || url.startsWith("https:"))
return false;
else
MLog.e("shouldOverrideUrlLoading");
try
Intent intent;
if (url.startsWith("intent://")) //MyCard、Line
intent = Intent.parseUri(url, Intent.URI_INTENT_SCHEME);
else /
intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
catch (Exception e)
MLog.e("Exception:"+e.getMessage());
//也可以在这里执行跳转到应用市场下载所需要的支付软件
MyToast.showMessage(“未安装APP无法跳转”);
return true;
// return super.shouldOverrideUrlLoading(view, url);
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error)
//接受证书
handler.cancel();// 接受所有网站的证书
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon)
super.onPageStarted(view, url, favicon);
@Override
public void onPageFinished(WebView view, String url)
super.onPageFinished(view, url);
@SuppressWarnings("deprecation")
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl)
super.onReceivedError(view, errorCode, description, failingUrl);
@TargetApi(android.os.Build.VERSION_CODES.M)
@Override
public void onReceivedError(WebView view, WebResourceRequest req, WebResourceError rerr)
onReceivedError(view, rerr.getErrorCode(), rerr.getDescription().toString(), req.getUrl().toString());
这里仅供参考,等你要接入的时候mycard支付渠道会给你最新的文档和jar,你就可以选择自己喜欢的接入方式来进行了。
以上是关于Android MyCard支付的主要内容,如果未能解决你的问题,请参考以下文章
android 集成支付宝app支付(原生态)-包括android前端与java后台