打开"(null)"? iOS 9中的对话框

时间:2016-06-28 18:23:12

标签: ios ios9 url-scheme

所以我试图在我的应用中添加自定义网址方案。一切正常。令人困惑的部分是当用户被重定向时,会出现一个对话框,上面写着:

打开"(null)"?

我无法弄清楚为什么它会显示null而不是应用程序的名称。我能够看到这个问题的另一个地方就在这里:

'Open this page in "null"' Modal appearing from FacebookSDK login after iOS9 and Swift 2 upgrade

但是谈到了更新到最新的SDK。它确实提到了我尝试使用LSApplicationQueriesSchemes进行的方案的白名单,但似乎并没有修复它。

3 个答案:

答案 0 :(得分:1)

该对话框中的值在构建设置 - >中指定。包装 - >产品名称。不管怎样,那个领域有点空白吗?通常构建应该失败,如果是这样,并且可能你在主屏幕上也注意到了错误,但谁知道呢!

作为旁注,URL方案不再是处理深层链接的万无一失的方式,实际上苹果公司不鼓励这样做。至少,您还需要实施通用链接,但即使这不是一个完整的解决方案,因为其他应用程序(Facebook等)处理出站链接的方式也有所不同。您可能需要考虑像Branch.io这样的工具(完全披露:我在分支团队中),以便为所有后勤工作提供帮助。

答案 1 :(得分:1)

所以在我的情况下,最终得到以下内容已添加到我的Info.plist中:

<key>CFBundleDisplayName</key>
<string></string>

删除此密钥或为其提供非空字符串值可修复问题并导致其给出:打开&#34;应用程序名称&#34;?。

答案 2 :(得分:0)

我发现这是关于iOS 9 (found answer here)

的白名单urelchemes
  

使用SDK 9构建的任何应用都需要在其plist文件中提供LSApplicationQueriesSchemes条目,声明它尝试查询哪些方案。

<key>LSApplicationQueriesSchemes</key>
<array>
 <string>urlscheme</string>
 <string>urlscheme2</string>
 <string>urlscheme3</string>
 <string>urlscheme4</string>
</array> 

这对我有所帮助。