要接入微信支付的小伙伴,首先要下载一份官方demo(APP微信支付官方Demo下载),然后打开工程,准备大干一场。

1、编译报错

编译的时候居然直接报错了(orz)

  • 错误提示:

    APP微信支付官方Demo报错
  • 解决方法:添加CFNetwork.framework 库
    选中项目名称 -> 选中TARGETS -> 选中Build Phases -> 在Link Binary With Libraries中添加 -> 点击“+”号,加入CFNetwork.framework

2、运行报错

修改之后编译成功,接下来就可以运行了,当出来熟悉的微信启动页地球的时候,你可能顿时送了一口气,然而接下来又有一个坑在等着你:

  • 错误提示:

    2017-03-17 10:23:39.380 SDKSample[53804:1647093] -[__NSArrayM enqueue:]: unrecognized selector sent to instance 0x61000005a190
    2017-03-17 10:23:39.383 SDKSample[53804:1647093] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayM enqueue:]: unrecognized selector sent to instance 0x61000005a190'
    *** First throw call stack:
    (
    0 CoreFoundation 0x000000010d821d4b __exceptionPreprocess + 171
    1 libobjc.A.dylib 0x000000010d1d821e objc_exception_throw + 48
    2 CoreFoundation 0x000000010d891f04 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
    3 CoreFoundation 0x000000010d7a7005 ___forwarding___ + 1013
    4 CoreFoundation 0x000000010d7a6b88 _CF_forwarding_prep_0 + 120
    5 SDKSample 0x000000010a87a51c -[WXOMTASocket send:callback:] + 129
    6 SDKSample 0x000000010a87a715 -[WXOMTASocket sendEvent:callback:] + 295
    7 SDKSample 0x000000010a85bc6a __reportOneEvent_block_invoke_3 + 252
    8 SDKSample 0x000000010a85b8ea __reportOneEvent_block_invoke + 1407
    9 libdispatch.dylib 0x000000010e2da978 _dispatch_call_block_and_release + 12
    10 libdispatch.dylib 0x000000010e3040cd _dispatch_client_callout + 8
    11 libdispatch.dylib 0x000000010e2e1e17 _dispatch_queue_serial_drain + 236
    12 libdispatch.dylib 0x000000010e2e2b4b _dispatch_queue_invoke + 1073
    13 libdispatch.dylib 0x000000010e2e302b _dispatch_queue_override_invoke + 683
    14 libdispatch.dylib 0x000000010e2e5385 _dispatch_root_queue_drain + 720
    15 libdispatch.dylib 0x000000010e2e5059 _dispatch_worker_thread3 + 123
    16 libsystem_pthread.dylib 0x000000010e6b3712 _pthread_wqthread + 1299
    17 libsystem_pthread.dylib 0x000000010e6b31ed start_wqthread + 13
    )
    libc++abi.dylib: terminating with uncaught exception of type NSException

    截图如下:

    NSArrayM enqueue 错误
  • 解决方法:

    在工程配置中的”Other Linker Flags”中加入”-Objc -all_load”

    添加 ”-Objc -all_load” 步骤

接下来你就可以愉快的运行 Demo了,但是下面的总结一定要看完。

3、总结

其实上面的两个错误,在你下载的Demo里面已经有提示了,是因为你没有按照作者的步骤来进行配置:

README.txt
  • 注意 README.txt 文件路径,因为Demo里面还有个小写的 readme.txt 文档。

官方README路径

有时候开发前阅读作者的 README 文档还是很有好处的,可以让你少走许多弯路。

iOS微信支付demo运行报错解决如下的更多相关文章

  1. android studio友盟分享demo运行报错Gradle's dependency cache may be corrupt解决方法

    gradle-wrapper.properties里修改了gradle的版本,与之前没有报错的项目gradle版本一致.

  2. iOS dyld: Library not loaded 报错解决

    Xcode 用的是10.1 版本打的苹果包在 ios系统10.0 以上可以正常运行 但是系统9.3的手机安装后直接运行就崩溃 后来插上电脑联调 报错 dyld: Library not loaded: ...

  3. 高德地图Demo运行报错 com.android.ide.common.process.ProcessException: Failed to execute aapt

    最近由于有需求去做导航方面的Android开发,很是无奈,以前也的确是没有搞过,领导开大会当着所有人的面说这是给我分配的第一个工作,无论如何要做好,突然间感觉压力好大,自己已经多年没有敲过代码,而且A ...

  4. wordcount在本地运行报错解决:Exception in thread "main" java.lang.UnsatisfiedLinkError:org.apache.hadoop.io.native.NativeID$Windows.access

    在windows中的intellij中运行wordcount程序,控制台输出以下报错 在Intellij编辑器中解决办法:本地重新创建NativeIO类,修改一个方法返回值,然后用新建的NativeI ...

  5. pythonmysql运行报错解决过程中遇到的其中一个报错解决文章来源

    本文章仅记录下面报错的解决文章来源:error: command 'C:\Users\Administrator\AppData\Local\Programs\Common\Micr osoft\Vi ...

  6. iOS开发-url包括中文报错解决的方法

    常常, 我们用通过这个方案调用API. NSString* urlString = [NSString stringWithFormat:@"http://api.douban.com/v2 ...

  7. textarea元素在加上runat="server"后运行报错解决

    当出现这个报错的时候,在后台引用相应的命名空间,为 using System.Web.UI; using System.Web.UI.HtmlControls;using System.Web.UI. ...

  8. 关于HACLON程序导出C#程序,运行报错解决方法

    摘要:一些环境配置异常的解决方法. 一,打不开相机: 1.打开系统高级设置--环境变量中是否有 HALCONROOT+安装目录名,若无进行添加. 2.关闭计算机其他连接相机的软件,例如海康的MVS,H ...

  9. QMUI android 框架 git下载项目运行报错解决 input String“”

    1.编译源码,input String“” 解决办法: 打开qmuidemo里面的gradle文件,注释掉顶部的 //def cmd = 'git rev-list HEAD --count'//de ...

随机推荐

  1. ubuntu(14.04) sphinx安装

    http://portal.digitser.cn/article-179-1.html

  2. sqlserver使用存储过程发送http请求

    本文主要向大家介绍了SQLServer数据库访问发送Http请求,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. -- 通用读取获取数据存储过程 --开启Sql Serve ...

  3. RxJava学习笔记(组合Observables)(转)

    组合Observable 当我们需要处理多个Observable的时候,我们可以通过Rxjava的组合函数来创建我们自己想要的Observable. Merge RxJava的 merge() 方法将 ...

  4. js中表达式 >>> 0 浅析 (以及用php简单翻译)

    今天在看lodash的源码中slice这个函数实现的时候发现了里面有这么一行代码 length = start > end ? 0 : ((end - start) >>> 0 ...

  5. Caffe搭建:常见问题解决办法和ubuntu使用中遇到问题(持续更新)

    严正声明: 在linux下面使用命令行操作时,一定要懂得命令行的意思,然后再执行,要不然在不知道接下来会发生什么的情况下输入一通命令,linux很有可能崩掉. 因为在linux下面,使用sudo以及r ...

  6. Bash - 趣味Shell

    好消息:本人博客已开通.很多其它博客请进 http://swplzj.github.io 今天抽闲玩了一下Shell.发现几个比較有意思的.记录一下. 终端彩虹字:lolcat 图形化文字:figle ...

  7. 微信支付错误,页面URL末注册

    最近在做个项目用到微信支付的JSSDK支付时候碰到“URL末注册的问题”,可是我已经在公众平台里的支付目录里添加了,测试了几次都是这个问题,最后才发现原来是大小写的问题,还有我的支付页面是ASP.NE ...

  8. 通过纯代码方式发布WCF服务

    网络上搜索WCF服务,一般是寄宿在IIS,通过WebConfig方式配服务地址,接口类型等信息,但是对于我这样的懒人,目前项目在开发阶段,实在不愿意每次添加新服务就更新配置文件,于是使用了反射来加载服 ...

  9. 【Unity】7.2 鼠标输入

    分类:Unity.C#.VS2015 创建日期:2016-04-21 一.简介 在桌面系统的游戏中,鼠标输入是最基本的输入方式之一.游戏很多操作都需要鼠标来完成,例如武器的瞄准和开火.菜单的单击.物体 ...

  10. impress.js 一个创建在线幻灯的js库

    真的好奇怪,我居然会写前端技术的博客.没有办法的,最近实习,看的大多是前端.所以今天就用这个来练练手了. Impress.js 是一个非常棒的用来创建在线演示的Javascript库.它基于CSS3转 ...