日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微信APP支付第一次成功,其他无法调起

發布時間:2024/3/26 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信APP支付第一次成功,其他无法调起 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

微信支付 第一次成功,其他無法調起,返回-1(Android eclipse 微信支付之大坑 簽名工具問題)_ws1836300的博客-CSDN博客_微信支付提示包名不對參考鏈接:http://blog.csdn.net/xinluqishi123/article/details/52234002微信支付第一次成功,其它支付不成功,可能的原因有:1:訂單號重復,這個重新生成一個訂單號就可以了。2:項目包名不對(包名必須與微信開發者平臺上的一致,詳情見參考鏈接)。3:APP的應用簽名不對,這個著重講一下哈(在這里我被坑了一個大跟頭,請大家盡量避免https://blog.csdn.net/ws1836300/article/details/53893102

問題:第一次調用非常OK,看到了微信支付界面,有自己生成的訂單號還有金額,但是放棄支付后再進入,就連微信客戶端都調用不起來了,換個訂單也是這樣,換個手機也是第一單可以調用微信客戶端,展示訂單號,金額,但是第二單說什么也不行了,定格在自己APP的支付界面,不報錯,任何反應也沒有。

解決方案見

申請以后你看到的就是圖片上的應用簽名,這個簽名是如何生成的在這里有介紹:?
https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5

問題是這個Key的生成是跟正式發布時打包做簽名有關的,我們把Android應用公開release的時候會將這個Key加進去作為應用的key防止被惡意覆蓋等等,我們在申請注冊微信應用的時候必然要提供正式生成的這個應用的Key給微信官網。?
因此這件事就被忽略了,以至于在開發的過程中,我們在自己的本地運行打包,訪問微信服務器調起支付的時候,微信第一次拿到了我們的應用發來的請求,仿佛建立了連接開始了心跳,這時微信會異步地根據留存的應用包名和應用Key與你現在發送的包名和應用Key進行驗證,我相信即使你第一次進行付款,也是很有可能不成功的,但是這塊我就沒有驗證了,因為這個時候已經有驗證結果回調回來了。

所以跟運維人員拿了Release時把Key打到APK安裝包里的命令,進行包含正式Key的打包,命令如下:

cordova ?build ? --release ?android jarsigner ? -verbose ? -sigalg ?SHA256withRSA ? -digestalg ?SHA1 ? -keystore ?E:\android-release-key.keystore ? E:\項目名稱\platforms\android\build\outputs\apk\android-release-unsigned.apk ? android-release-key.keystore //運行完這條命令需要輸入密碼 zipalign -v 4 E:\項目名稱\platforms\android\build\outputs\apk\android-release-unsigned.apk ? a.apk?


問題就解決了。每次訪問都能順利地調用微信支付了。?
不得不感慨下,微信用這一手也嚴格控制了在他那里注冊的應用,注冊一個Key用一個,再想用,那么重新走流程吧。
————————————————
?

微信支付第一次成功,其它支付不成功,可能的原因有:

1:訂單號重復,這個重新生成一個訂單號就可以了。

2:項目包名不對(包名必須與微信開發者平臺上的一致,詳情見參考鏈接)。

3:APP的應用簽名不對,這個著重講一下哈(在這里我被坑了一個大跟頭,請大家盡量避免)。

(注:APK簽名步驟分為兩步,首先通過keytool生成用來簽名的 xxx.keystore,再用jarsigner簽名apk文件)

微信支付僅能成功調用一次的問題_聽從內心的召喚-CSDN博客本人使用Android開發有一段時間了,但是本身沒有系統學,而且多年專注服務端開發,總覺得因為項目需要接觸Android移動端開發只是暫時的,所以沒有太上心,結果碰到一個大難題折騰了一天,最后被有經驗的小伙伴提示了一下才迎刃而解,感覺無地自容的同時,又非常竊喜,畢竟跨過一個一個的坎,就成長了,在這里丟人等換個地方就成牛了也未可知,哈哈。閑言就絮叨到這里,趕緊分享:微信支付調用接口整體的流程有必要簡述https://blog.csdn.net/xinluqishi123/article/details/52234002

Android簽名用keytool和jarsigner制作apk文件https://www.cnblogs.com/linn/p/3784363.html

Android簽名用keytool和jarsigner制作apk文件

生成證書 keytool -genkey -alias aeo_android.keystore -keyalg RSA -validity 20000 -keystore aeo_android.keystore簽名 jarsigner.exe -verbose -keystore aeo_android.keystore -signedjar soccer-release.apk soccer-release-unsigned.apk aeo_android.keystore驗證簽名 jarsigner.exe -verify soccer-release.apk 備注?同樣的程序發布過程,在同事的機器上(JDK 1.6)簽名后可以正常安裝,但是在我機器上(JDK 1.7)簽名后安裝說簽名錯誤無法安裝。找到了解決的辦法,需要在簽名程序 jarsigner 增加如下參數-digestalg SHA1 -sigalg MD5withRSA?https://github.com/mobileresearch/weibo_android_sdk/blob/master/app_signatures.apk另外微博和微信的app校驗簽名工具,實際對比的是程序簽名和包名,包名在AndroidManifest.xml:package=""?

?

jarsigner -verbose -keystore feelyou.keystore -storepass feelyou.info -signedjar signed.apk -digestalg SHA1 -sigalg MD5withRSA unsigned.apk feelyou

解釋:

1、-keystore feelyou.keystore:指定需要使用的簽名文件,直接寫文件名說明在當前目錄下,否則請自行指定具體路徑
2、-storepass feelyou.info:自動輸入密碼,keystore的密碼和alias的密碼都是我用的都是feelyou.info
3、-signedjar signed.apk:指定簽名后的文件存儲路徑,這里是說以signed.apk的文件名存在當前路徑下
4、-digestalg SHA1 -sigalg MD5withRSA:這就是必須加上的參數,如果你是jdk 1.6也不受影響
5、unsigned.apk:未簽名的apk路徑,這里是當前路徑下的unsigned.apk文件
6、feelyou:最后這個是alias

總結

以上是生活随笔為你收集整理的微信APP支付第一次成功,其他无法调起的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。