摘要:一聚易付移動(dòng)支付服務(wù)簡(jiǎn)介聚易付移動(dòng)支付服務(wù)的目標(biāo)就是使開發(fā)者很輕松地在自己的中集成支付功能,從而節(jié)約時(shí)間和精力用在本身的業(yè)務(wù)當(dāng)中。支付兩種加密方式,和。中定義了關(guān)于支付結(jié)果的各種狀態(tài)支付成功,繼續(xù)程序邏輯支付成功至此,支付功能集成完畢。
一、聚易付移動(dòng)支付服務(wù)(MixpayAndroidSDK)簡(jiǎn)介
聚易付移動(dòng)支付服務(wù)(MixpayAndroidSDK)的目標(biāo)就是使開發(fā)者很輕松地在自己的APP中集成支付功能,從而節(jié)約時(shí)間和精力用在本身的業(yè)務(wù)當(dāng)中。
只需15分鐘,就可以讓你的APP具有支付寶支付、銀行卡支付、手機(jī)充值卡支付和游戲點(diǎn)卡支付。解決了之前開發(fā)者在集成支付時(shí)遇到的各種問題,比如:
與支付平臺(tái)簽約時(shí)間過長(zhǎng)
支付平臺(tái)文檔坑太多,導(dǎo)到開發(fā)過程很不順暢
支付平臺(tái)技術(shù)支持不足,聯(lián)調(diào)困難
每一個(gè)支付通道都要折騰一翻
MixpayAndroidSDK致力于幫助開發(fā)者解決以上問題。
以下通過一個(gè)實(shí)際項(xiàng)目來說明如何使用MixpayAndroidSDK。
筆者的開發(fā)環(huán)境:
Macbook Pro 10.9.4
Android Studio v0.8.2
Gradle 1.10
JDK 1.7
二、注冊(cè)、添加APP 2.1 注冊(cè)注冊(cè)地址:https://m.mixpay.cn/register
注冊(cè)成功之后會(huì)收到Mixpay發(fā)出的一封確認(rèn)郵件,點(diǎn)擊其中的確認(rèn)鏈接即完成注冊(cè)過程。
2.2 添加APP登錄到商戶后臺(tái),通過菜單導(dǎo)航到 應(yīng)用->新建應(yīng)用 頁面
https://m.mixpay.cn/application/add
在表單中填寫應(yīng)用的相關(guān)信息,保存即可。如下圖所示:
其中的"通知地址"是指,Mixpay在完成一筆支付之后,通過這個(gè)地址通知給您,您在接收到進(jìn)行相應(yīng)的處理,并返回一個(gè)字符串"success"以表示接收成功,整個(gè)支付過程也就完成了。
APP保存之后,Mixpay會(huì)位APP分配一個(gè)唯一標(biāo)識(shí),即APP_KEY,可以在 APP詳情頁面中看到:
2.3 添加密鑰操作地址:https://m.mixpay.cn/key/add
密鑰用來對(duì)訂單信息進(jìn)行加密。Mixpay支付兩種加密方式,RSA和MD5。
使用RSA,按頁面上給出的提示操作即可。
使用MD5,直接保存即可。在密鑰詳細(xì)信息中會(huì)看到secretKey。
在這里選擇MD5加密方式:
key信息:
2.4 將密鑰綁定至APP操作地址:https://m.mixpay.cn/key
在key的右邊點(diǎn)擊"加載到應(yīng)用",在打開的頁面中選擇剛才新建的APP即可。
可以通過gradle、maven、jar包三種方式添加依賴,開發(fā)者可以根據(jù)自身情況任選。這里選擇Gradle,在build.gradle中添加以下配置:
apply plugin: "maven" repositories { maven { url "https://maven.mixpay.cn" } } ... dependencies { compile ("cn.mixpay:android-sdk:1.0.+"){ exclude group: "com.google.android", module: "android" } }3.2 初始化訂單
引入MixpayAdroidSDK后,即可通過cn.mixpay.Order來表示自己的訂單:
import cn.mixpay.sdk.*; ... public static final String MD5_SECRET_KEY = "568bd43af00128ee4d1bce2679*****"; private static final String APP_KEY = "60186724345*****"; Order myOrder = null; //訂單信息 String orderId = "order_id_001"; String userId = "user_id_001"; int amount = 1; String orderTitle = "瑜伽墊十個(gè)"; String orderDesc = "國(guó)際健美協(xié)會(huì)10:00下單"; String productId = "product_id_001"; //初始化訂單界面,此處略去代碼 //簽名 String sign = cn.mixpay.server.MD5SignatureTool.signOrderInfo(amount, APP_KEY, "", orderId, "", orderDesc, orderTitle, "", productId, "", userId , MD5_SECRET_KEY); myOrder = new Order(orderId, userId, amount, orderTitle, orderDesc, productId, sign);
其中的參數(shù)依次表示:
訂單編碼、用戶編碼、金額(單位是分)、訂單標(biāo)題、訂單描述、商品編碼、訂單簽名
3.3 支付初始化一個(gè)cn.mixpay.MixpayAPI對(duì)象,這個(gè)對(duì)象里提供了具體的支付方法:
public void pay(View view) { MixpayAPI api = new MixpayAPI(this, APP_KEY); api.startPay(this, myOrder); }
其中this表示當(dāng)前的Activity,APP_KEY是在步驟2.2中得到的應(yīng)用唯一標(biāo)識(shí),myOrder就是剛剛生成的訂單。
將pay方法綁定給頁面上的支付按鈕,在點(diǎn)擊按鈕時(shí),MixpayAndroidSDK會(huì)做以下工作:
檢測(cè)當(dāng)前環(huán)境中是否安裝了Mixpay支付插件
沒有的話會(huì)提示用戶安裝
若有更新的Mixpay支付插件,提示用戶升級(jí)
打開支付界面引導(dǎo)用戶選擇支付方式并完成支付
訂單界面:
支付界面:
3.4 支付結(jié)果處理通過onActivityResult獲得支付結(jié)果。MixpayAPI中定義了關(guān)于支付結(jié)果的各種狀態(tài):
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == MixpayAPI.REQUEST_CODE_START_PAY) { Long mixpayOrderId = null; try { mixpayOrderId = data.getLongExtra(MixpayAPI.GET_MIXPAY_ORDER_ID, 0); }catch (Exception e) { //mixpayOrderId = new Long(0); Log.e(TAG, "no order is returned"); } switch (resultCode) { case MixpayAPI.ORDER_STATUS_PAY_SUCCESS: //TODO:支付成功,繼續(xù)程序邏輯 Toast.makeText(this, "支付成功"), Toast.LENGTH_LONG).show(); break; case MixpayAPI.ORDER_STATUS_UNPAY: ... break; case MixpayAPI.ORDER_STATUS_PAYING: ... break; case MixpayAPI.ORDER_STATUS_CANCELED: ... break; case MixpayAPI.ORDER_STATUS_PAY_FAILURE: ... break; case MixpayAPI.ORDER_STATUS_UNKNOWN: ... break; } } }
至此,支付功能集成完畢。
四、更多內(nèi)容 4.1 關(guān)于訂單簽名Mixpay提供的幫助文檔中詳細(xì)說明了如何對(duì)訂單信息進(jìn)行簽名,同時(shí)也提供了java、PHP、Ruby、Python、NodeJS五種語言的示例,可以直接拿來用。
其中對(duì)于java還提供了服務(wù)器端的sdk,提供了方便的訂單簽名方法。具體請(qǐng)參考這里:https://www.mixpay.cn/docs/v1/server/java/
在這個(gè)示例中,我直接在APP項(xiàng)目里引入這個(gè)服務(wù)器端sdk。
4.2 相關(guān)鏈接Mixpay Android SDK 使用幫助
Mixpay Server SDK For JAVA
Mixpay on Github
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/64106.html
摘要:本文介紹支付寶中的深度學(xué)習(xí)引擎。因而無論在運(yùn)行速度和內(nèi)存占用等性能指標(biāo)還是在兼容性上,支付寶的移動(dòng)端都必須做到極致,才能較大幅度地降低使用門檻。五大目標(biāo)支付寶是針對(duì)國(guó)民環(huán)境定制開發(fā)的移動(dòng)端解決方案,項(xiàng)目制定了如下技術(shù)目標(biāo)。 本文介紹支付寶App中的深度學(xué)習(xí)引擎——xNN。xNN通過模型和計(jì)算框架兩個(gè)方面的優(yōu)化,解決了深度學(xué)習(xí)在移動(dòng)端落地的一系列問題。xNN的模型壓縮工具 (xqueeze) ...
摘要:舊頁面如何運(yùn)行到移動(dòng)端首先確保選用組件都支持移動(dòng)端。如何部署并訪問移動(dòng)應(yīng)用部署方式與應(yīng)用部署方式完全一致。如何跟其他社交應(yīng)用集成平臺(tái)最終發(fā)布得到的是一個(gè),也即一個(gè)頁面使用了移動(dòng)端的瀏覽器預(yù)覽。 點(diǎn)擊觀看視頻演示 如果您還未具備 Enhancer 開發(fā)經(jīng)驗(yàn),建議您先學(xué)習(xí)完《快速上手》,在了解平臺(tái)基本操作之后,再來嘗試移動(dòng)應(yīng)用開發(fā),這樣會(huì)事半功倍。 如果您已具備 Enhancer 開發(fā)經(jīng)驗(yàn)...
閱讀 2478·2021-11-16 11:52
閱讀 2401·2021-11-11 16:55
閱讀 834·2021-09-02 15:41
閱讀 3057·2019-08-30 15:54
閱讀 3220·2019-08-30 15:54
閱讀 2324·2019-08-29 15:39
閱讀 1631·2019-08-29 15:18
閱讀 1053·2019-08-29 13:00