如何分享 Instagram 用户名?

How can I share instagram username?

我正在开发 Xcode 6.1.1 和应用程序,希望有一个 link 可以带你到 https://www.instagram.com/naturee/

我添加了这个:

NSURL *instagramURL = [NSURL URLWithString:@"instagram://user?username=naturee"];
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
    [[UIApplication sharedApplication] openURL:instagramURL];
}

形式

https://www.instagram.com/developer/mobile-sharing/iphone-hooks/

但它会将我带到 Instagram 应用程序而不是用户名!

有人知道吗??

您可以在 iOS9 上的应用程序中使用支持通用链接。 关于此 link

有更多信息

如果您通过以下方式更改您的 NSURL,您的代码将起作用: NSURL *instagramURL = [NSURL URLWithString:@"https://www.instagram.com/naturee/"];

如果您仍想使用 URL 方案,则您的实际方案有问题:@"instagram://user?username=naturee"。您可以通过在您的设备上打开 safari 并通过此 url 方案来检查它。它不会打开 instagram 的 naturee 个人资料。

要了解通用链接,首先要了解深度 links。

深度link无非是将应用程序打开到特定应用程序内容的能力。这类似于 link 访问网站主页以外的页面。

为了深入 link 应用程序,传统上开发人员必须在应用程序时向操作系统注册协议(即 instagram:// 、 twitter:// 、 facebook:// )已安装。随后,当设备收到注册协议的传入请求时,操作系统会启动关联的应用程序,让它处理请求 (link)。

这很好用;但是,如果开发人员有一个镜像其应用程序内容的网站,则必须有效地管理、维护和同步两组 URL 方案,一组用于网络,一组用于应用程序。

Universal Links 尝试通过使应用能够处理传入的 https:// 请求(常规 Web 请求)来解决此问题。

在 iOS 9 上,用户可以导航或单击 link 网页,如果该网站设置为处理通用链接(并且该应用程序安装在设备上),则操作系统将拦截请求(如果 Safari 尚未打开则不打开)并将请求传递给关联的应用程序。

通用链接是一种将 Web 流量智能地路由到应用程序(如果可用)的简便方法。它使开发人员能够将该应用程序设为在 iOS 上发送网络流量的默认位置,如果未安装该应用程序,则使用网络作为备份目的地。

引自此site