微信支付簽名配置正確,但返回-1,調不出支付界面(有的手機能調起,有的不能)


首先,我反復確認了三次以上,配置的簽名沒有問題,打包后的簽名沒有問題, request.checkArgs()返回true,然后——

同一個包,在測試機上有的手機能調出支付界面,有的不能,然而在調起支付失敗的手機上,登錄我的微信就可以調出,登錄我同事的就不行。

最后發現的問題是:微信會對之前的調用生成緩存,如果你之前安的本來是debug(未簽名)的包,那時候點擊微信支付失敗了,微信緩存下了這個狀態,當你重新安裝release(已簽名)的包再調用時,會依然返回-1調起失敗。這個問題我試過的是這樣,甚至在我先安了release調起成功之后,卸載App,安裝debug版,這時候的第一次點擊也是可以喚起支付界面的。

so,解決辦法是:

1.重啟下手機或者清理下微信的緩存

如果不行,先表摔手機——>

2.清空微信數據

要還是不行——>

3.卸載重裝微信

一般這樣是OK了

當然了,得看具體情況,如果你試了我說這些依然不OK,那么你可以摔手機,但是不能罵人

 

 

順便記錄一下,微信支付成功后,回調界面關閉時會有一個閃屏(有的手機是沒有的),這是因為WXPayEntryActivity本身是一個空白界面,finish時會有閃屏的效果,

解決這個問題只需要將WXPayEntryActivity變成透明:

android:theme="@android:style/Theme.Translucent"

這樣視覺上就感受不到它的finish效果。

 

微信登錄與微信分享同回調WXEntryAcitivity,區別是BaseResp.getType()返回值不同

BaseResp.getType() == 1;則為微信登陸,

BaseResp.getType() == 2;則為微信分享(之前好像是0)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM