編輯:關於Android編程
銀聯支付流程如下所示:
vcu1w/fOxLW1o6y+zb/J0tTN6rPJo6zO0tTa1eLA78z5yc+94bm5zbyjrNLyzqphc7XEzNjK4tDUoaM8L3A+DQo8aDQ+PHN0cm9uZz5qYXKw/KGiLnNvzsS8/rrNLmJpbs7EvP4gPC9zdHJvbmc+PC9oND4NCjxwPtLyzqrO0rXEuaSzzNfK1LTT0LXjtuDBy6Os0rvVxc28vdiyu8/Co6zL+dLUztLWu7j4s/bOxLz+vNC1xL3hubnNvKGjPC9wPg0KPHA+PGJyIC8+DQo8aW1nIGFsdD0="這裡寫圖片描述" src="/uploadfile/Collfiles/20160507/20160507090907245.png" title="\" />
<!-- 銀聯支付相關配置 --> <uses-library android:name="org.simalliance.openmobileapi" android:required="false" /> <activity android:name="com.unionpay.uppay.PayActivity" android:configChanges="orientation|keyboardHidden" android:excludeFromRecents="true" android:label="@string/app_name" android:screenOrientation="portrait" android:windowSoftInputMode="adjustResize" /> <activity android:name="com.unionpay.UPPayWapActivity" android:configChanges="orientation|keyboardHidden" android:screenOrientation="portrait" android:windowSoftInputMode="adjustResize" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.NFC" /> <uses-feature android:name="android.hardware.nfc.hce" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> <uses-permission android:name="org.simalliance.openmobileapi.SMARTCARD" />
import com.unionpay.UPPayAssistEx; //在調用支付控件的代碼按以下方式調用支付控件 //比如onclick或者handler等等... /*參數說明: activity —— 用於啟動支付控件的活動對象 spId —— 保留使用,這裡輸入null sysProvider —— 保留使用,這裡輸入null orderInfo —— 訂單信息為交易流水號,即TN,為商戶後台從銀聯後台獲取。 mode —— 銀聯後台環境標識,“00”將在銀聯正式環境發起交易,“01”將在銀聯測試環境發起交易 返回值: UPPayAssistEx.PLUGIN_VALID —— 該終端已經安裝控件,並啟動控件 UPPayAssistEx.PLUGIN_NOT_FOUND — 手機終端尚未安裝支付控件,需要先安裝支付控件 */ String serverMode = "01"; UPPayAssistEx.startPay (activity, null, null, tn, serverMode);
支付完成後,獲取支付控件支付結果,並添加相應處理邏輯,只需實現調用Activity中的onActivityResult()方法即可,支付成功時會返回商戶客戶端支付結果的簽名信息。
官方Demo是這樣的:
protected void onActivityResult( int requestCode, int resultCode, Intent data) { if( data == null ){ return; } String str = data.getExtras().getString("pay_result"); if( str.equalsIgnoreCase(R_SUCCESS) ){ // 支付成功後,extra中如果存在result_data,取出校驗 // result_data結構見c)result_data參數說明 if(data.hasExtra("result_data")) { String sign = data.getExtras().getString("result_data"); // 驗簽證書同後台驗簽證書 // 此處的verify,商戶需送去商戶後台做驗簽 if(verify(sign)) { //驗證通過後,顯示支付結果 showResultDialog(" 支付成功! "); } else { // 驗證不通過後的處理 // 建議通過商戶後台查詢支付結果 } } else { // 未收到簽名信息 // 建議通過商戶後台查詢支付結果 } }else if( str.equalsIgnoreCase(R_FAIL) ){ showResultDialog(" 支付失敗! "); }else if( str.equalsIgnoreCase(R_CANCEL) ){ showResultDialog(" 你已取消了本次訂單的支付! ");
由此就基本完成了客戶端的集成,當然還有一些:支付失敗的處理、取消訂單的處理,以及退貨、退款等等處理,等有時間再完善了。
本想截圖的!!手機暫時出現了無法截圖的毛病...
DDMSDDMS 的全稱是Dalvik Debug Monitor Service,是Android 開發環境中的Dalvik 虛擬機調試監控服務HierarchyVie
最近比較忙,而且又要維護自己的博客,視頻和公眾號,也就沒仔細的梳理源碼的入門邏輯,今天也就來講一個源碼的玩法,各位看官,一起學習學習! 參考資料 官方教程:http:/
本文為大家分享了Android bitmap使用細節,供大家參考,具體內容如下1、計算機表示圖形的幾種方式1)BMP :幾乎不進行壓縮 占用空間比較大 2)JPG : 在
ListView作為android中最常使用的控件,可以以條目的形式顯示大量的數據,經常被用於顯示最近聯系人列表,對於每一個 Item,均要求adapter的getVie