iOS 15无法通过deeplink唤起Google Authenticator应用问题求助
iOS 15+ 唤起Google Authenticator失效解决方案
- 配置Info.plist白名单
iOS 15 对未提前声明的自定义URL Scheme跳转拦截逻辑更加严格,你需要在项目的Info.plist中添加LSApplicationQueriesSchemes字段,类型为数组,新增值为otpauth的字符串子项,声明应用允许查询并跳转Google Authenticator对应的Scheme。 - 替换为官方推荐的跳转API
你使用的openURL:方法早在iOS 10就已被官方废弃,iOS 15对旧API的权限校验逻辑做了收紧,建议替换为新版跳转API,Swift示例代码如下:guard let gaUrl = URL(string: "otpauth://") else { return } UIApplication.shared.open(gaUrl, options: [:]) { isSuccess in // 可在这里处理跳转成功/失败的逻辑 } - 更新Google Authenticator到最新版本
部分旧版本Google Authenticator对iOS 15+的Scheme响应存在适配问题,更新到App Store最新版本即可修复该异常。 - 调整测试方式
iOS 15的Safari对无参数的纯Scheme路径默认会做拦截,不要直接在Safari地址栏输入otpauth://测试,建议直接在App内调用API测试,或者通过本地HTML的a标签点击测试。
内容的提问来源于stack exchange,提问作者Cong Phu
相关产品推荐
相关产品推荐

