2015-04-01 115 views
4

我仔细检查过的一切,从我的理解,这是所有我需要做的:Facebook应用邀请iOS版SDK v4的错误

self.inviteContent = [[FBSDKAppInviteContent alloc] initWithAppLinkURL:[NSURL URLWithString:@"http://mywebsite.com"]]; 
[FBSDKAppInviteDialog showWithContent:self.inviteContent delegate:self]; 

在mywebsite.com我有这样的标题(此处显示的示例值):

<html> 
<head> 
    <title>My Website</title> 
    <meta property="al:ios:url" content="appurl://action"> 
    <meta property="al:ios:app_store_id" content="1234567"> 
    <meta property="al:ios:app_name" content="My App"> 
</head> 
<body> 
    ... 
</body> 
</html> 

所以对话框切换到最新的Facebook iOS应用程序。我写的消息,并选择我要发送邀请的人,点击发送,我得到这个错误:

Missing App Link URL 
The app link used with this invite does not contain an Android or iOS URL. Developers are required to enter a URL for at least one platform. 

我在做什么错?

我的应用处理自定义网址的罚款,因为如果我在Mobile Safari中输入appurl://action,它会打开我的应用。

+0

您可以将您的网址进入网址调试工具,看它是否有任何无效的标签:https://developers.facebook.com/tools/debug/ – 2015-04-01 23:34:38

+0

没关系啊我有用过那个。不知道App Link的东西是否会出现在那里。事实证明,我有一个og:url转发到另一个没有al标签的网址。全部排序感谢 – jdelaune 2015-04-02 00:07:14

+0

不错,这也为我解决了它,请转换为答复和接受! – 2015-04-22 10:39:31

回答

10

你需要从这里创建一个应用链接URL,https://developers.facebook.com/quickstarts/?platform=app-links-host

  1. 从列表中选择您的应用程序
  2. 填写表格具有同等信息
  3. 单击Next!
  4. 你完成了。

现在,您可以使用该链接与您的代码进行邀请。

self.inviteContent = [[FBSDKAppInviteContent alloc] initWithAppLinkURL:[NSURL URLWithString:APP_LINK_HERE]]; 
[FBSDKAppInviteDialog showWithContent:self.inviteContent delegate:self]; 

该链接的格式将是这样的,

https://fb.me/xxxxxxxxxxxxxxxx

附:所有的x将被数字取代。

+1

该家伙想主办他自己的应用程序链接 – Radu 2015-06-09 07:41:03

+0

我完成了这些步骤,但我又一次得到同样的错误。“应用程序链接URL丢失 与此邀请一起使用的应用程序链接不包含Android或iOS网址,开发人员必须输入至少一个平台的URL。” – neha 2016-07-29 07:08:50

+0

嘿Hemang,我已经做了你已经显示,但我没有得到任何结果。 我可以看到FBSDKInvite dailog,我可以选择邀请朋友,邀请也发送成功,但我的朋友不会得到任何邀请。并且我还没有在邀请委托结果中得到零 – 2017-04-20 09:46:15

0

尝试也增加OG:标题和OG:类型属性,它为我工作

<meta property="og:title" content="My App" /> 
<meta property="og:type" content="website" /> 
+0

嘿igor在哪里添加这2行..从这么多天我正在寻找这种代码为我的应用程序,我可以找到这个代码,以及如何编辑..请让我知道。谢谢 – 2017-04-20 09:41:40

0

添加meta标签会解决这个问题,这是通过FB创建应用程序链接的HTML片段。 Fb在其应用链接url页面上添加了一些额外的元标记,并且如果在浏览器中打开,它也会直接重定向到iTunes。

<html> 
 
<head> 
 
\t <title>app name</title> 
 
\t <meta property="fb:app_id" content="your fb app id" /> 
 
\t <meta property="al:ios:url" content="Your app link url" /> 
 
\t <meta property="al:ios:app_name" content="your app name" /> 
 
\t <meta property="al:ios:app_store_id" content="your app id" /> 
 
\t <meta property="al:web:should_fallback" content="false" /> 
 
\t <meta http-equiv="refresh" content="0;url=https://itunes.apple.com/WebObjects/MZStore.woa/wa/redirectToContent?id=your app store id" /> 
 
</head> 
 
<body> 
 
\t Redirecting... 
 
</body> 
 
</html>