0

我在我的应用程序中添加了一个 URL 方案。URL 方案是testapp://. testapp://当我在 Safari 中输入文本并点击返回时,它启动了我的应用程序。

然后我用testapp://placeid=12. 这是在 iPad 中启动 TestApp,但在 iPhone 中,我得到Cannot Open Page并且无法测试。

我可以通过placeid=12as URL 查询。但我想知道的是,为什么它不能单独在 iPhone 中打开。

对此有任何想法吗?

注意:无论设备类型如何,这似乎都是 iOS 问题。这是 iOS 6 及更高版本的行为。

4

3 回答 3

0

它可能不起作用,因为 testapp://placeid=12 不是有效的 URL。您还需要一个域地址,例如 testapp://localhost/query?placeid=12。'=' 字符可能会导致错误。

我现在无法测试它,所以请告诉我。

于 2013-03-11T14:50:26.883 回答
0

会不会是每台设备都运行不同的 iOS 版本?

如果是这样,请根据版本考虑一些细节。例如,如果您阅读Advanced App Tricks,有一个部分可能会对您有所帮助:

处理 URL 请求

具有自己的自定义 URL 方案的应用程序必须能够处理传递给它的 URL。所有 URL 都会在启动时或在您的应用程序运行时或在后台传递给您的应用程序委托。要处理传入的 URL,您的委托应实现以下方法:

希望这可以帮助。否则,我真的会建议你坚持标准。它会让你的生活更轻松:)

于 2013-03-11T13:59:12.673 回答
0

如问题说明中所述,这是 iOS 6 的 Safari 浏览器行为。进入 Safari 时,URL 的主机中不能有“=”。

相反,我通过以下方式解决了这个问题。

在邮件中发送 URL,从 Mail 中,如果我单击 URL,应用程序就会启动。但重要的一点是,我必须解析 URL 主机才能获取值。

于 2013-08-02T01:41:02.780 回答