1:大概步驟和官方文檔差不多(官方地址QQ錢包支付android路徑點擊此處),但是看官方肯定會感覺太繁瑣,只需簡單幾步就可集成,關鍵還是調試時的一些小坑。
2:不要太相信經理給你的賬號和密碼設置,因為賬號不通的話會出現各種問題,你根本無從下手解決即使你的集成完全ok 例如:每次支付都會提示你你的appid和簽名不一致。不用想了,賬號問題,很可能你的賬號都沒通過呢,可能原因你們的簽名那一串數字其他地方用的時候要把中間冒號去掉,但是qq的不能,只能連冒號一起提交審核。
3:簡單的集成步驟 3.1添加jar包mqqopenpay.jar 3.2判斷是否支持qq是qq支付的版本最低版本,一般都支持(處理好null值即可) 調用isMobileQQSupportApi函數判斷手Q是否支持QQ錢包支付: boolean isSupport = openApi.isMobileQQSupportApi(OpenConstants.API_NAME_PAY); 3.3通過OpenApiFactory工廠類獲得開放Api實例: IOpenApi openApi = OpenApiFactory.getInstance(this, APP_ID); 3.4`PayApi api = new PayApi(); api.appId = APP_ID;(申請應用的唯一標識) api.serialNumber =”” + paySerial++;(自增長的int值) api.callbackScheme = “qwallet100703379”;(固定格式+appid) api.tokenId = mJsonObject3.getString(“tokenId”);(相當于預支付訂單號,從后臺獲?。? api.pubAcc = “”;(可不寫) api.pubAccHint = “”;(可不寫) api.nonce = mJsonObject3.getString(“nonce”);(隨機字符串) api.timeStamp = System.currentTimeMillis() / 1000; api.bargainorId = BARGAINOR_ID;(商戶號,申請時給定的) //api.sig = mJsonObject3.getString(“sign”); // 商戶Server下發的數字簽名,生成的簽名串,參看“數字簽名” //api.sigType = “HMAC-SHA1”; // 簽名時,使用的加密方式,默認為”HMAC-SHA1” try { signApi(api); }if (api.checkParams()) { mOpenApi.execApi(api); Log.e(“glkk”,”調起qq支付”); } 簽名代碼 3.4
/** * 簽名步驟建議不要在app上執行,要放在服務器上執行. */ public void signApi(PayApi api) throws Exception { // 按key排序 StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("appId=").append(api.appId); stringBuilder.append("&bargainorId=").append(BARGAINOR_ID); stringBuilder.append("&nonce=").append(api.nonce); stringBuilder.append("&pubAcc=").append(""); stringBuilder.append("&tokenId=").append(api.tokenId); byte[] byteKey = (APP_KEY+"&").getBytes("UTF-8"); // 根據給定的字節數組構造一個密鑰,第二參數指定一個密鑰算法的名稱 SecretKey secretKey = new SecretKeySpec(byteKey, "HmacSHA1"); // 生成一個指定 Mac 算法 的 Mac 對象 Mac mac = Mac.getInstance("HmacSHA1"); // 用給定密鑰初始化 Mac 對象 mac.init(secretKey); byte[] byteSrc = stringBuilder.toString().getBytes("UTF-8"); // 完成 Mac 操作 byte[] dst = mac.doFinal(byteSrc); // Base64 api.sig = Base64.encodeToString(dst, Base64.NO_WRAP); api.sigType = "HMAC-SHA1"; }3.5:配置清單文件和回調的activity按開發文檔即可 appkey為后臺給你的那個32位的(千萬別用那個短的十位左右的,那個不行) 小結,本來想把出現問題的那兩個黑框框簽名不對,和appkey不對應的圖貼上,但是找不到了,如有問題可聯系我郵箱18792586740@163.com
新聞熱點
疑難解答