1. 程式人生 > >Android中的微信、支付寶支付功能的簡單實現

Android中的微信、支付寶支付功能的簡單實現

眾所周知如果想使用像支付寶的支付功能或者微信的支付功能,前提是必須得先去各自的開發者平臺上建立賬戶獲得appkey,但是在申請的時候需要提交各自材料,如下圖所示:
這裡寫圖片描述

可以看到申請時需要的材料非常多,不管是企業支付還是個體都需要一系列的材料,但是像我們這樣的個人程式設計師就想練習一下支付功能,或者就想做一個小應用掙點錢,支付寶和微信目前官網都不能支援,這就很坑爹,難道我們普通的程式設計師就不能使用支付功能了嘛?

後來找了很多資料,發現一個第三方支援支付的,那就是Bmob,它大概得原理就是本來我們要使用支付寶的支付功能申請的時候需要各種證件,現在Bmob用他們公司的各種證件自動給我們申請,即我們呼叫的支付寶、微信的支付功能均用的Bmob的賬號,這樣也就決定了使用者支付給我們的錢不會直接到我們的賬號,而是先到Bmob的賬號中,我們可以申請提現。

由於我們使用的是Bmob的賬戶支付,所以在商家上一直顯示的是“廣州市比目網路科技有限公司”
這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

Bmob支付功能一共涉及了兩個jar包

這裡寫圖片描述

微信支付需要安裝微信外掛

BmobPayPlugin.apk

關鍵程式碼如下

需要的許可權

<!-- alipay sdk permission begin -->
      <uses-permission android:name="android.permission.INTERNET" />
      <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name
="android.permission.READ_PHONE_STATE" />
<!-- alipay sdk permission end -->

在Androidmainfest中需要註冊的

<!-- bmob pay sdk activity begin ,please put below code into application tag -->
  <activity
      android:name="com.alipay.sdk.app.H5PayActivity"
      android:configChanges="orientation|keyboardHidden|navigation"
      android:exported="false"
      android:screenOrientation="behind"
      android:windowSoftInputMode="adjustResize|stateHidden" >
  </activity>
  <activity
      android:name="com.bmob.pay.tool.PayActivity"
      android:screenOrientation="portrait"
      android:theme="@android:style/Theme.Translucent" />
  <!-- bmob pay sdk activity end -->

需要在application註冊自己應用的祕鑰

 BmobPay.init(context,"你的Application ID");

祕鑰去Bmob註冊應用就可以,繫結一下自己的支付寶收款賬號,就ok了,非常簡單。

呼叫支付寶支付功能

new BmobPay(MainActivity.this).pay(0.02,"某商品",new PayListener(){...});

呼叫微信支付的支付功能

 new BmobPay(MainActivity.this).payByWX(0.02,"某商品",new PayListener(){...});

查詢訂單的方法

 new BmobPay(MainActivity.this).query("訂單id",new OrderQueryListener(){...});

可以上Bmob查詢自己的交易記錄

這裡寫圖片描述

Bmob的支付功能比直接上支付寶或微信官網的支付功能使用起來方便多了,感興趣的童鞋不妨試試。