我正在构建一个应用程序,当您单击标有“Facebook”,“Twitter”或“Instagram”的按钮时,它将打开相应的应用程序并将您带到我设置的特定页面。我一直在寻找上周的答案,如果有人可以提供帮助我会非常感激!
我已经遍布StackOverflow和其他论坛和视频,无法找到这个问题的答案。我发现的解决方案都已经过时,不再适用,或者不是我想要的。
答案 0 :(得分:1)
请注意:通常这样的问题不会在SO上得到非常有用的答案。在未来,尝试更具体,并展示一点工作。但是,我很欣赏当您不知道正确的术语时如何难以搜索解决方案。您正在寻找的术语是“URL方案”
每个应用都有自己的URL方案,用于打开特定页面和/或网站。您需要检查他们的文档和/或在线搜索,看看您是否能找到所需的URL方案。有一个非官方网站列出了很多这些,但它已不再维护。
例如,要打开特定的Facebook个人资料页面(可能是个人或公司等),请使用:fb://profile/<page id>"
替换与该页面对应的Facebook ID。这是一个数值,您有时可以在URL中找到它,但http://findmyfbid.com/是一个有用的资源。
然后,您只需在共享的UIApplication
实例上触发open
即可打开该URL。但请记住,用户可能没有安装Facebook,因此您应该使用canOpenURL
检查您尝试使用的URL方案是否受支持,如果不支持,您只需在浏览器中打开该URL即可。
但是,某些应用可能已为Universal linking实施了新功能,因此如果您只提供标准网址,设备可能会自动打开相应的网页,例如https://facebook.com/<page_id>
。我建议玩弄它。
注意,对于您希望能够检查canOpenURL
的每个网址方案,您需要add it到应用的plist。
由于我已经拥有Instagram和Twitter,因此这里是打开用户页面的基本方案:
instagram://user?username=<username>
twitter://user?screen_name=<username>
注意:这些应用程序支持其他网址方案(例如,您可以在Instagram上链接到位置页面或特定标记),因此您应该检查他们的docu人tation以获取更多信息有关URL方案的信息。