2

我不太了解iOS如何处理URL,但它似乎在我的手机上做了一些奇怪的事情......

我们的应用程序中有一个“Like”按钮,单击该按钮时应该打开 Facebook 应用程序(或 Safari,如果未安装 Facebook)。出于某种原因,当我在手机上单击它时,它会打开“Premier Inn”应用程序。我的手机上同时安装了 Facebook 应用程序和 Premier Inn 应用程序,但不确定为什么在执行以下代码时 Facebook 没有打开:

NSURL *fanPageURL = [NSURL URLWithString:@"fb://page/BIG_NUMBER_HERE"];

if (![[UIApplication sharedApplication] openURL: fanPageURL]) { ... }

出于显而易见的原因,我在上面的代码中用页码替换了 BIG_NUMBER_HERE。

谁能解释为什么这可能会出错?Premier Inn 应用程序能否以某种方式“注册”为 fb:// 网址的处理程序?

问候,

4

2 回答 2

1

正如您所建议的,听起来 Premier Inn 已注册为“fb”的处理程序。没有中央注册中心可以阻止应用程序使用相同的 URL 方案,这实际上取决于开发人员的好运和合理的命名空间选择。

编辑:我找不到这方面的规范来源,但调用的处理程序应用程序是最近安装的。

于 2012-04-11T11:51:44.090 回答
0

尝试将其更改pageprofile.

于 2013-04-05T04:47:24.817 回答