自定义urlscheme不被识别为短信应用程序中的链接(仅限于iPhone 4 iOS 5.0)

简介:在我的应用程序中,我已经定义了一个自定义URL格式“myapp:// ..”。 但是,当它发送到SMS中时,URL不会被识别为链接。 所以用户无法点击它并启动应用程序。 相反,他必须复制并粘贴到浏览器中。 这只发生在iPhone4(iOS v5.0)

重现步骤:通过在info.plist中指定新的URLscheme来定义应用程序的自定义URL。 发送短信与应用程序的自定义URL到iPhone4(iOS v5.0)。 打开短信。

预期结果:URL必须在SMS中显示为链接。

实际结果:url显示为纯文本而不是链接。

回归:在升级到iOS 5之前,在相同的iPhone4(iOS版本4.3)中,URL始终显示为链接。

注意:有趣的一面是,如果我将消息从同一个iPhone转发给自己,在发送的短信和新收到的短信中,该URL将显示为链接。

检查您是否使用大写/混合scheme(如MyApp:// …)与全部小写(myapp:// …)。 在iOS 5下,如果您尝试在自定义URLscheme中使用大写字母,操作系统将无法识别,并会抛出exception。 如果这不起作用,几乎可以肯定的是,在这种情况下,你应该提交一个错误的SMS代码。 让我知道如果这工作。

看来,短信urlparsing器不够聪明,你的url是一个应用程序 – 我的build议是使用基于http://的URL,然后将redirect到您的应用程序的url。

这将允许您向非iPhone用户显示一条消息,这些用户可能无意中收到了消息,并且还允许您注册已链接的短消息已经点击了所有这些,另外还在iOS 5上工作。

在iOS 5.0.1的工作原理,但你应该附加一些任意的文字之前的链接。

重新启动手机shell可以解决这个问题。