ios9系统 微信左上角返回按钮问题.这是不是微信支付的一个重大bug

Pages: 1/6
主题 : 微信支付如果遇到跳转只有一个确定请看这里
级别: 新手上路
可可豆: 30 CB
威望: 30 点
在线时间: 39(时)
发自: Web Page
来源于&&分类
微信支付如果遇到跳转只有一个确定请看这里&&&
今天在联调微信支付,不得不说,和它比起来,阿里的支付sdk真的是太好用了。果然和后端同学在联调的时候发现跳转后出现了这一画面。这种什么也没有的界面真的是让人抓狂了,点击后返回的状态竟然是-2,用户取消。原本以为是自己的问题,耐着性子配合了@ 的demo来调试,最终总结如下:首先确认 是传递接口的字段导致的问题。是传递接口的字段导致的问题。是传递接口的字段导致的问题。说几个可能出现问题的点。第一步获取prepayId,这一步往往都不会有什么错误,根着官方文档都不会出现什么问题,坑在第二步发送跳转1、注意一下 nonceStr 需要是第一步里生成的 nonceStr,而不是重新生成。2、sign 需要重新针对5个字段进行签名:partnerId prepayId package nonceStr timeStamp  不需要传入appid或者openid需要传入appid3、package = @&Sign=WXPay& 注意服务器传来的&=&会不会被转义成 %3D4、sign的确需要大写,不像之前有些帖子说的要小写。基本我遇到的坑就是这些,欢迎大家讨论。@狂龙天使 的demo地址内容更新:by luohuasheng0225我补充一坑:1、如果你app同时使用了友盟分享(含微信分享)和微信支付。如果你没有处理好这个两个SDK register的顺序,那就很不幸,也会出现这种情况。(如何出现这种情况,请看我的测试步骤:1、杀掉微信进程、2、删除自己开发的app、3、重新同步自己的app到设备,点击微信支付)两者register的顺序:如果是先调用微信registerApp、然后调用友盟的 [UMSocialWechatHandler setWXAppId:WXAppID appSecret:[NSString stringWithBundleNameForKey:@&WXAppSecret&] url:url] ,然后按照我测试的步骤,应该就会出现。解决办法:改变两者的register步骤。先调用友盟,然后调用微信。 内容更新:by yutiandesan补充一点,时间戳需要为10位,之前后台给的是13位,也是只有一个确定按钮,并且ret=-2 [ 此帖被zepto在 18:06重新编辑 ]
级别: 新手上路
可可豆: 30 CB
威望: 30 点
在线时间: 39(时)
发自: Web Page
更新一下修正一下之前的错误描述
级别: 新手上路
UID: 460886
可可豆: 23 CB
威望: 23 点
在线时间: 35(时)
发自: Web Page
顶一下!!
级别: 新手上路
UID: 312556
可可豆: 21 CB
威望: 19 点
在线时间: 35(时)
发自: Web Page
顶一下,虽然我的问题还么有解决////
级别: 新手上路
可可豆: 101 CB
威望: 1 点
在线时间: 32(时)
发自: Web Page
我补充一坑:1、如果你app同时使用了友盟分享(含微信分享)和微信支付。如果你没有处理好这个两个SDK register的顺序,那就很不幸,也会出现这种情况。(如何出现这种情况,请看我的测试步骤:1、杀掉微信进程、2、删除自己开发的app、3、重新同步自己的app到设备,点击微信支付)两者register的顺序:如果是先调用微信registerApp、然后调用友盟的 [UMSocialWechatHandler setWXAppId:WXAppID appSecret:[NSString stringWithBundleNameForKey:@&WXAppSecret&] url:url] ,然后按照我测试的步骤,应该就会出现。解决办法:改变两者的register步骤。先调用友盟,然后调用微信。
级别: 圣骑士
UID: 321946
可可豆: 1305 CB
威望: 1307 点
在线时间: 2754(时)
发自: Web Page
级别: 新手上路
UID: 393966
可可豆: 16 CB
威望: 10 点
在线时间: 225(时)
发自: Web Page
验证过二次签名了&&&&为什么跳转到微信还是只有一个确定按钮
级别: 新手上路
UID: 419183
可可豆: 79 CB
威望: 76 点
在线时间: 113(时)
发自: Web Page
问个问题啊。xocde升级到7后,微信支付的回调方法为什么不执行了?-(void) onResp:(BaseResp*)resp这个方法没有执行
级别: 新手上路
UID: 512291
可可豆: 105 CB
威望: 97 点
在线时间: 7(时)
发自: Web Page
这是单独接的微信支付嘛?为毛不接聚合支付呢?所有通道一次性搞定额。。。。
移动端第三方支付平台—爱贝云计费/home.html
级别: 侠客
UID: 487047
可可豆: 213 CB
威望: 196 点
在线时间: 231(时)
发自: Web Page
回 楼主(zepto) 的帖子
话说lz我用官方文demo调试,第一步就错,返回app没有支付权限,是不是申请那边的问题啊?
Pages: 1/6
关注本帖(如果有新回复会站内信通知您)
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 关注CVP公众号
扫一扫 浏览移动版Pages: 1/6
主题 : 微信支付如果遇到跳转只有一个确定请看这里
级别: 新手上路
可可豆: 30 CB
威望: 30 点
在线时间: 39(时)
发自: Web Page
来源于&&分类
微信支付如果遇到跳转只有一个确定请看这里&&&
今天在联调微信支付,不得不说,和它比起来,阿里的支付sdk真的是太好用了。果然和后端同学在联调的时候发现跳转后出现了这一画面。这种什么也没有的界面真的是让人抓狂了,点击后返回的状态竟然是-2,用户取消。原本以为是自己的问题,耐着性子配合了@ 的demo来调试,最终总结如下:首先确认 是传递接口的字段导致的问题。是传递接口的字段导致的问题。是传递接口的字段导致的问题。说几个可能出现问题的点。第一步获取prepayId,这一步往往都不会有什么错误,根着官方文档都不会出现什么问题,坑在第二步发送跳转1、注意一下 nonceStr 需要是第一步里生成的 nonceStr,而不是重新生成。2、sign 需要重新针对5个字段进行签名:partnerId prepayId package nonceStr timeStamp  不需要传入appid或者openid需要传入appid3、package = @&Sign=WXPay& 注意服务器传来的&=&会不会被转义成 %3D4、sign的确需要大写,不像之前有些帖子说的要小写。基本我遇到的坑就是这些,欢迎大家讨论。@狂龙天使 的demo地址内容更新:by luohuasheng0225我补充一坑:1、如果你app同时使用了友盟分享(含微信分享)和微信支付。如果你没有处理好这个两个SDK register的顺序,那就很不幸,也会出现这种情况。(如何出现这种情况,请看我的测试步骤:1、杀掉微信进程、2、删除自己开发的app、3、重新同步自己的app到设备,点击微信支付)两者register的顺序:如果是先调用微信registerApp、然后调用友盟的 [UMSocialWechatHandler setWXAppId:WXAppID appSecret:[NSString stringWithBundleNameForKey:@&WXAppSecret&] url:url] ,然后按照我测试的步骤,应该就会出现。解决办法:改变两者的register步骤。先调用友盟,然后调用微信。 内容更新:by yutiandesan补充一点,时间戳需要为10位,之前后台给的是13位,也是只有一个确定按钮,并且ret=-2 [ 此帖被zepto在 18:06重新编辑 ]
级别: 新手上路
可可豆: 30 CB
威望: 30 点
在线时间: 39(时)
发自: Web Page
更新一下修正一下之前的错误描述
级别: 新手上路
UID: 460886
可可豆: 23 CB
威望: 23 点
在线时间: 35(时)
发自: Web Page
顶一下!!
级别: 新手上路
UID: 312556
可可豆: 21 CB
威望: 19 点
在线时间: 35(时)
发自: Web Page
顶一下,虽然我的问题还么有解决////
级别: 新手上路
可可豆: 101 CB
威望: 1 点
在线时间: 32(时)
发自: Web Page
我补充一坑:1、如果你app同时使用了友盟分享(含微信分享)和微信支付。如果你没有处理好这个两个SDK register的顺序,那就很不幸,也会出现这种情况。(如何出现这种情况,请看我的测试步骤:1、杀掉微信进程、2、删除自己开发的app、3、重新同步自己的app到设备,点击微信支付)两者register的顺序:如果是先调用微信registerApp、然后调用友盟的 [UMSocialWechatHandler setWXAppId:WXAppID appSecret:[NSString stringWithBundleNameForKey:@&WXAppSecret&] url:url] ,然后按照我测试的步骤,应该就会出现。解决办法:改变两者的register步骤。先调用友盟,然后调用微信。
级别: 圣骑士
UID: 321946
可可豆: 1305 CB
威望: 1307 点
在线时间: 2754(时)
发自: Web Page
级别: 新手上路
UID: 393966
可可豆: 16 CB
威望: 10 点
在线时间: 225(时)
发自: Web Page
验证过二次签名了&&&&为什么跳转到微信还是只有一个确定按钮
级别: 新手上路
UID: 419183
可可豆: 79 CB
威望: 76 点
在线时间: 113(时)
发自: Web Page
问个问题啊。xocde升级到7后,微信支付的回调方法为什么不执行了?-(void) onResp:(BaseResp*)resp这个方法没有执行
级别: 新手上路
UID: 512291
可可豆: 105 CB
威望: 97 点
在线时间: 7(时)
发自: Web Page
这是单独接的微信支付嘛?为毛不接聚合支付呢?所有通道一次性搞定额。。。。
移动端第三方支付平台—爱贝云计费/home.html
级别: 侠客
UID: 487047
可可豆: 213 CB
威望: 196 点
在线时间: 231(时)
发自: Web Page
回 楼主(zepto) 的帖子
话说lz我用官方文demo调试,第一步就错,返回app没有支付权限,是不是申请那边的问题啊?
Pages: 1/6
关注本帖(如果有新回复会站内信通知您)
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 关注CVP公众号
扫一扫 浏览移动版项目适配iOS9遇到的一些问题及解决办法
1.网络请求报错。
升级Xcode 7.0发现网络访问失败。
输出错误信息
The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.
原因:iOS9引入了新特性App Transport Security (ATS)。
详情:App Transport Security (ATS)
新特性要求App内访问的网络必须使用HTTPS协议。
但是现在公司的项目使用的是HTTP协议,使用私有加密方式保证数据安全。现在也不能马上改成HTTPS协议传输。
最终找到以下解决办法:
在Info.plist中添加NSAppTransportSecurity类型Dictionary。
在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES
2.Scheme白名单问题(无法判断手机是否安装微信等)
-canOpenURL: failed for URL: &weixin://app/wxdaae92a9cfe5d54c/& - error: &This app is not allowed to query for scheme weixin&
搜索后得知
近期苹果公司iOS 9系统策略更新,限制了http协议的访问,此外应用需要在“Info.plist”中将要使用的URL Schemes列为白名单,才可正常检查其他应用是否安装。
受此影响,当你的应用在iOS 9中需要使用微信SDK的相关能力(分享、收藏、支付、登录等)时,需要在“Info.plist”里增加如下代码:
注意:截图来自微信开放平台,里面已经包含第一个问题的解决
完成后需使用Xcode 7编译。
如果你在模拟器上运行可以能还会有以下报错:
-canOpenURL: failed for URL: &weixin://app/wxdaae92a9cfe5d54c/& - error: &(null)&
这是因为模拟器上并没有安装微信,如果运行到真机上就不会有报错了。
请注意:未升级到微信客户端6.2.5及以上版本的用户,在iOS 9下使用到微信相关功能时,仍可能无法成功。
下面整理一些常用的白名单
qq登录绑定,qq支付,qq分享
微信支付,微信登录绑定
新浪登录绑定
支付宝支付,支付宝登录绑定
3.Bitcode问题(通俗解释:在线版安卓ART模式)
ld: warning: directory not found for option ‘-F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/Developer/Library/Frameworks‘
ld: -bundle and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Bitcode报错
原因:Xcode7 及以上版本会默认开启 bitcode 。
bitcode具体是什么就不解释了。
解决方法:
1.更新library使包含Bitcode,否则会出现以上的警告。
2.关闭Bitcode,简单粗暴。
Build Settings”-&”Enable Bitcode”改成&NO&。
4.项目运行报错如下
&Error&: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
&Error&: CGContextTranslateCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
&Error&: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
出错原因:设置app的状态栏样式的使用使用了旧的方式,在info.plist里面设置了View controller-based status bar appearance为NO,默认为YES,一般式iOS6的时候使用这种方式,iOS7,8也兼容,但是到了iOS9就报了警告。
[[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent];
以前我们通过上面代码改变状态了颜色,iOS9以后点进去看api发现如下说明
解决办法:
修改方式将View controller-based status bar appearance设置为YES,然后使用新的方式来实现状态栏的样式。
- (UIStatusBarStyle)preferredStatusBarS
- (UIViewController *)childViewControllerForStatusBarS
- (void)setNeedsStatusBarAppearanceUpdate
5 directory not found for option问题
警告如下:
ld: warning: directory not found for option ‘-F/Applications/Xcode 7.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.0.sdk/Developer/Library/Frameworks‘
问题原因:Xcode7将framworks位置改变了。
解决方法:
点击项目,选择 Targets-&xxxTests
选择build setting ,找到 Frameworks Search Path 或者 Library Search Paths
删除$(SDKROOT)/Developer/Library/Frameworks,
或者使用$(PLATFORM_DIR)/Developer/Library/Frameworks替换
framworks位置改变
暂时就这些,还有其他问题会继续更新
如果你们还有其他问题请参考:
本文已收录于以下专栏:
相关文章推荐
网络请求报错。
升级Xcode 7.0发现网络访问失败。
输出错误信息
#warning: 获取app配置信息失败: The resource could not be loaded because...
网络请求报错。
升级Xcode 7.0发现网络访问失败。
输出错误信息
#warning: 获取app配置信息失败: The resource could not be loaded bec...
对于机器学习,很多人的观点是:机器学习技术是今后所有技术人员都绕不过的一个门槛。 那么,普通程序员该学习机器学作为一名对机器学习心有向往的程序员,我该以什么样的姿势开始呢?
网络请求报错。
升级Xcode 7.0发现网络访问失败。
输出错误信息
#warning: 获取app配置信息失败: The resource could not be loaded because ...
网络请求报错。
升级Xcode 7.0发现网络访问失败。
输出错误信息
#warning: 获取app配置信息失败: The resource could not be loaded b...
iOS9 网络适配问题
Scheme 白名单问题
项目适配iOS9遇到的一些问题及解决办法
1.网络请求报错。
升级Xcode 7.0发现网络访问失败。
输出错误信息
The resource could not ...
升级Xcode7 运行项目发现报错如下:1.Scheme白名单问题
-canOpenURL: failed for URL: “weixin://app/wxdaae92a9cfe5d54c/”...
学习中遇到的问题及解决方案记录下来
学习中遇到的问题及解决方法,持续更新...
最近在维护公司的一个项目,这个项目有些老了,为了增加存在感,boss要求能在通知栏显示一些小公告。于是开始去了解一些iOS8的 widget,当时手上可调试的机器只有一台iOS7,于是就将Xcode升...
他的最新文章
讲师:唐宇迪
讲师:卿来云
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 微信左上角关闭事件 的文章

 

随机推荐