iOS报错 LaunchServices: ERROR: There is no registered handler for URL scheme alipay 怎么解决?

更新于:2016年05月13日 11:09:18

报错信息:

LaunchServices: ERROR: There is no registered handler for URL scheme alipay


解决方案:

由于 iOS 9 系统策略更新以及支付渠道的变更,为了更好的支付体验,请下载 iOS-SDK 最新版本。

  1. 针对 iOS 9 系统更新, 为了使你接入的微信支付与支付宝支付兼容 iOS 9 ,请按照以下引导进行操作: 应用需要在 Info.plist 中将要使用的 URL Schemes 列为白名单,才可正常检查其他应用是否安装。受此影响,当你使用 Xcode 7 及 iOS 9 编译发布新版本 App,并且用到了判断是否安装相应的 App (支付宝钱包、微信)的接口时,需要在 Info.plist 里添加如下代码:

    <key>LSApplicationQueriesSchemes</key>
    <array>
        <string>weixin</string>
        <string>wechat</string>
        <string>alipay</string>
    </array>

    请注意未升级到微信 6.2.5 及以上版本的用户,在 iOS 9 下使用到微信相关功能时,仍可能无法成功

  2. 针对 iOS 9 限制 http 协议的访问,如果 App 需要访问 http://, 则需要在 Info.plist 添加如下代码:

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
  3. 针对使用 Xcode 7 编译失败,遇到错误信息为:

    XXXXXXX does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target.

    请到 Xcode 项目的 Build Settings 标签页搜索 bitcode,将 Enable Bitcode 设置为 NO 即可。

注意 以上更改项完成后,需使用 Xcode 7 进行编译

    您需要登录后才可以回复