应用程序中的iOS自定义URL方案在第一次使用Url方案时不会打开

时间:2014-01-27 21:26:06

标签: ios objective-c mobile-safari

在我的应用中,我配置了自定义网址方案“TestScheme”。一切正常,但有一个问题。

当我打开例如Safari中的“TestScheme:// xyz”,有时会打开一个对话框,询问我是否要在我的应用中打开该网站。当我点击打开时没有任何反应。当我再次在safari中打开相同的站点时,应用程序将正确打开而不显示对话框。

有人可以解释这种奇怪的行为吗?当我在对话框中点击打开时为什么不打开应用程序?

编辑:在使用HTML中的href重定向到自定义URL方案时,我不会遇到此问题。只是在浏览器中键入URL时,问题仍然存在。

2 个答案:

答案 0 :(得分:0)

由于您正在开发中,听起来每次编译和重新部署应用程序设备时,都需要时间来注册系统。此外,在部署之后,您可能希望确保杀死Safari,以便它可以加载自定义Url方案。

只是我的两分钱。

答案 1 :(得分:0)

如果应用程序自重新启动以来从未运行过,被强制关闭或被操作系统监视程序杀死,那么我们唯一的方法就是处理并检查{{1}中的启动选项打电话。我还没有偶然发现一个让我想起这个的didFinishLaunchingWithOptions教程......

你可以在发布选项中查看网址,当你放置一个小警报框来查看你在发布时引擎盖下的内容,因为我还没弄明白如何(或花时间弄清楚如何)挂起调试器并使用链接启动应用程序。顺便说一下,我现在正在使用iOS 7.1.2进行测试。

openURL

然后你可以看到发送的内容并决定采取行动/解析它。

[具有讽刺意味的是我在Android上也有同样的完全启动行为问题也要解决...我想我需要解析onCreate中的包...]