• 微信支付签名配置正确,但返回-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)

  • 相关阅读:
    react 编译时内存溢出
    mysqldump 迁移数据库
    个人理解的http1.0 http1.1 http2 grpc https
    rabbitmq学习记录
    linux 网关设置(ping不通www.baidu.com)
    seata学习 Libbo
    redis基础快速入门及安装 Libbo
    分布式事务实现 Libbo
    sentinal学习 Libbo
    Nacos(一):认识理解 Libbo
  • 原文地址:https://www.cnblogs.com/Sharley/p/10790089.html
Copyright © 2020-2023  润新知