收藏
评论

关于OpenSDK iOS 15系统的适配说明官方

Xcode13.0及以上版本编译出的App在iOS 15.0及以上系统上被限制了URL Scheme query的数量为50。对于plist中LSApplicationQueriesSchemes配置的scheme数量超过50的App,可能会导致:

  1. OpenSDK某些接口返回错误结果;
  2. 无法使用Universal Link拉起微信,引发分享消息到微信后,应用名被添加"未验证应用"的问题。

使用13.0以及以上版本Xcode编译App的开发者需要适配以确保OpenSDK的正常使用。

背景

从iOS 9开始,iOS支持在工程plist中配置LSApplicationQueriesSchemes

示例:

将其他App的scheme配置到LSApplicationQueriesScheme中后,可以通过以下代码判断是否可以通过scheme跳转对应的App。

 BOOL ret = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"weixin://"]];

在接入OpenSDK时,接入文档有要求在LSApplicationQueriesScheme添加weixin 和weixinULAPI(如上面截图所示)。

iOS 15 系统相关变更

经验证,在iOS 15系统上,使用Xcode 13编译出的App,LSApplicationQueriesSchemes的数量会限制为50个。

第50个之后的scheme配置会不生效,以下代码会返回NO

BOOL ret = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"otherAppScheme://"]];

OpenSDK适配建议

如果LSApplicationQueriesSchemes配置的scheme数量小于50,或者"weixin"和"weixinULAPI"这两个sheme在前50,无需适配。

使用Xcode 12以及以下版本Xcode编译的App目前暂不需要适配。

确保"weixin"和"weixinULAPI"配置在LSApplicationQueriesSchemes的前50。

否则以下接口可能会在iOS 15系统上返回错误结果或者表现异常:

  1. [WXApi isWXAppInstalled]:安装微信的情况下,也返回NO
  2. [WXApi isWXAppSupportApi]:支持的情况下,也返回NO
  3. [WXApi isWXAppSupportStateAPI]:支持的情况下,也返回NO
  4. [WXApi sendAuthReq:viewController:delegatecompletion]:会判断微信未安装,拉起网页授权。
  5. 所有的接口都会无法使用Universal Link拉起微信,降级使用scheme拉起微信,导致未验证应用问题。


13914浏览
收藏

17 个评论

  • 一笑皆春
    一笑皆春
    发表于移动端
    2021-09-24
    前排吸赞🌹
    2021-09-24
    赞同 5
    回复
  • 年轻乄霸道
    年轻乄霸道
    发表于移动端
    2021-09-24
    抢🛋️ 哎,没抢着!
    2021-09-24
    赞同 3
    回复 1
    • ¿仝?
      ¿仝?
      2021-09-25
      你的 你的  都是你的🛋
      2021-09-25
      回复
  • 郭毅.
    郭毅.
    2021-09-24

    放假前最后一次吸赞

    2021-09-24
    赞同 2
    回复
  • 张有釜
    张有釜
    2021-09-26

    50个 啧啧 那是个什么样的API

    真拿 URL Scheme query 当万能的了

    2021-09-26
    赞同 1
    回复
  • 侯先生
    侯先生
    2021-09-25

    卖瓜子·

    2021-09-25
    赞同 1
    回复
  • 三十
    三十
    2021-09-24

    : Cannot read property 'database' of undefined

    大佬能知道我这是咋了

    2021-09-24
    赞同 1
    回复
  • apollo
    apollo
    2021-09-24

    赶上前排了吗?老铁们给个赞行不行?

    2021-09-24
    赞同 1
    回复
  • 徽信用户
    徽信用户
    发表于移动端
    2021-09-24
    2021-09-24
    赞同 1
    回复
  • i
W
    i W
    2021-09-24

    为什么要给我发2次

    2021-09-24
    赞同 1
    回复 1
  • Lawrence
    Lawrence
    发表于移动端
    2021-09-24
    板凳。iOS 开发已跑路。
    2021-09-24
    赞同 1
    回复

正在加载...

登录 后发表内容