Android微信支付

來源:http://www.360doc.com/content/15/0214/10/7044580_448519997.shtml


一、使用微信官方的提供的demo裏的appid等

1.微信接口上手指南:(從“移動應用開發”->“Android接入指南”)建議,先把官方這篇文章看完

2.微信支付接口(從“移動應用開發”->“Android開發手冊” )(下載官方demo  https://res.wx.qq.com/paymchres/zh_CN/htmledition/download/wxpay/app_wx_pay_tool_android1d902c.zip)

  • Android端接口文檔
  • SDK for Android
  • Sample for Android
  • 服務端demo
  • 退款及對賬開發指南、退款及對賬demo
2015-02-14  joy_chen 文章來源  閱 33312  轉 233
轉藏到我的圖書館分享到微信

一、使用微信官方的提供的demo裏的appid等

1.微信接口上手指南:(從“移動應用開發”->“Android接入指南”)建議,先把官方這篇文章看完

2.微信支付接口(從“移動應用開發”->“Android開發手冊” )(下載官方demo  https://res.wx.qq.com/paymchres/zh_CN/htmledition/download/wxpay/app_wx_pay_tool_android1d902c.zip)

  • Android端接口文檔
  • SDK for Android
  • Sample for Android
  • 服務端demo
  • 退款及對賬開發指南、退款及對賬demo

結合官方給的demo和《微信支付接口 For Android 上手指南》文檔,可以看出,微信支付總共分爲4個步驟:
(1)利用獲取APP_ID 和 APP_SECRET 請求獲取 access_token

2015-02-14  joy_chen 文章來源  閱 33312  轉 233
轉藏到我的圖書館分享到微信

一、使用微信官方的提供的demo裏的appid等

1.微信接口上手指南:(從“移動應用開發”->“Android接入指南”)建議,先把官方這篇文章看完

2.微信支付接口(從“移動應用開發”->“Android開發手冊” )(下載官方demo  https://res.wx.qq.com/paymchres/zh_CN/htmledition/download/wxpay/app_wx_pay_tool_android1d902c.zip)

  • Android端接口文檔
  • SDK for Android
  • Sample for Android
  • 服務端demo
  • 退款及對賬開發指南、退款及對賬demo

結合官方給的demo和《微信支付接口 For Android 上手指南》文檔,可以看出,微信支付總共分爲4個步驟:
(1)利用獲取APP_ID 和 APP_SECRET 請求獲取 access_token

2015-02-14  joy_chen 文章來源  閱 33312  轉 233
轉藏到我的圖書館分享到微信

一、使用微信官方的提供的demo裏的appid等

1.微信接口上手指南:(從“移動應用開發”->“Android接入指南”)建議,先把官方這篇文章看完

2.微信支付接口(從“移動應用開發”->“Android開發手冊” )(下載官方demo  https://res.wx.qq.com/paymchres/zh_CN/htmledition/download/wxpay/app_wx_pay_tool_android1d902c.zip)

  • Android端接口文檔
  • SDK for Android
  • Sample for Android
  • 服務端demo
  • 退款及對賬開發指南、退款及對賬demo

結合官方給的demo和《微信支付接口 For Android 上手指南》文檔,可以看出,微信支付總共分爲4個步驟:
(1)利用獲取APP_ID 和 APP_SECRET 請求獲取 access_token


(2)利用access_token,以及partneridAPP_KEY生成預支付訂單


(3)利用之前的參數以及PARTNER_ID調起微信支付


(4)支付完成後


微信會回調 WXPayEntryActivity 的public void onResp(BaseResp resp)方法,所以後續操作,放在這個回調函數中操作就可以了。
resp.errCode== 0 :表示支付成功
resp.errCode== -1 :表示支付失敗
resp.errCode== -2 :表示取消支付


特別注意:


1.第一次很多同學調試微信的官方demo會遇到這樣的問題


解決辦法https://open.weixin.qq.com/cgi-bin/frame?t=resource/res_main_tmpl&lang=zh_CN&token=bc77c2a9db0380aca7d29b1418fa0bccc23070d7

(1)、解壓sdk demo工程壓縮包,並導入到workspace,如下圖:


(2)、選擇Eclipse頂部菜單Window->Preferences,在彈出的對話框中,選擇Android目錄下的Build,如下圖:


指定Custom debug keystore選項的路徑爲sdk demo工程目錄中的debug.keystore文件,如下圖:


並應用該配置。


(3)、運行該sdk_sample工程。



二、當你使用自己申請的appid等參數。

當你在微信開發平臺(open.weixin.qq.com)申請一個普通應用時,你會得到:
public static final String APP_ID = “wxd930ea5d5a258f4f”;
private static final String APP_SECRET = “db426a9829e4b49a0dcac7b4162da6b6″;

當你的應用涉及到微信支付功能是,你需要申請微信支付,申請會有些合同啊什麼的,審覈通過你會收到郵件,郵件中會有
private static final String APP_KEY(PaySignKey) = “L8LrMqqeGRxST5reouB0K66CaYAWpqhAVsq7ggKkxHCOastWksvuX1uvmvQclxaHoYd3ElNBrNO2DHnnzgfVG9Qs473M3DTOZug5er46FhuGofumV8H2FVR9qkjSlC5K”; // wxd930ea5d5a258f4f 對應的支付密鑰

除此之外,還有個微信支付商戶申請,申請通過後郵件中會回覆:
public static final String PARTNER_ID = “1900000109″;
private static final String PARTNER_KEY = “8934e7d15453e97507ef794cf7b0519d”;

然後爲了支付的安全起見,最好把支付的前兩個步驟放在服務器端完成,客戶端請求服務器拿到前兩個步驟生成的一些參數,然後在客戶端做第三步,調起微信支付。

特別注意:

1.可以彈出微信支付的界面,但是支付之後沒有進入回調的Activity:WXPayEntryActivity ?

微信開放平臺有個 不成文的規定(文檔裏沒有說明),就是回調的Activity必須是:你的包名(微信demo裏是:net.sourceforge.simcpux)+.wxapi.WXPayEntryActivity.java
其他的接口回調的Activity必須是:你的包名(微信demo裏是:net.sourceforge.simcpux)+.wxapi.WXEntryActivity.java

而且這兩個回調的Activity必須要實現IWXAPIEventHandler的接口 。

2.簽名問題,總是彈不出微信支付界面,然後就回調-1 ?
這個問題多半是簽名錯誤,或者keystore,包名,簽名不一致導致。

(1)在申請微信開放平臺的時候需要填寫 應用包名和應用簽名(這個簽名可以用 apk生成),所以這就需要你用正式的 keystore打包應用測試開放平臺的接口。

(2)再有錯誤,就是你第二步生成Prepayid時的app_signature 生成錯誤,仔細看下demo和文檔。

3.注意配置文件中AndroidManifest.xml
demo裏中有這寫配置,似乎對微信支付的調起及回調都有影響,還是按照demo裏的,加上這部分配置


三、微信其他接口-分享接口


用過微信支付接口之後,其他的微信接口就簡單多了。微信的分享 分爲分享到朋友圈和分享給好友(即發送消息)兩種。

(1)直接調用SDK


然後調起 分享的對話框之後就是 微信做的操作,分享完成後一樣會回到回調的入口,你的包名(微信demo裏是:net.sourceforge.simcpux)+.wxapi.WXEntryActivity.java

你可以在onResp中做分享完成的後續操作。


(2)還有一種就是不使用SDK方式分享,參見:http://blog.csdn.net/freesonhp/article/details/10296141




這種方式的缺點就是你得不到回調,不知道分享是否成功,但卻是一種簡單的方式。

如果還有其他什麼問題:參見另一篇文章 http://blog.csdn.net/janice0529/article/details/38051987

發佈了21 篇原創文章 · 獲贊 12 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章