【问题标题】:Facebook FBSDKAppInviteContent - Missing App Link URLFacebook FBSDKAppInviteContent - 缺少应用链接 URL
【发布时间】:2015-04-29 05:55:17
【问题描述】:

您是否需要为您的应用程序链接 url 提供带有 meta 标签的自己的网站才能使用 FBSDKAppInviteContentFBSDKAppInviteDialog 邀请朋友?如果我只放应用链接网址,

它显示一个错误,说类似

缺少应用链接 URL 此邀请使用的应用链接不包含 Android 或 iOS URL。开发者必须输入至少一个平台的 URL。

我正在使用facebook-sdk iOS 和fbsdksharekit。有谁知道如何解决这个错误或警告?

【问题讨论】:

    标签: ios facebook facebook-sdk-4.0


    【解决方案1】:

    是的,您必须在您的网站中添加应用链接网址的元标记。


    iOS

    例如,假设您有一个页面位于:

    http://example.com/applinks

    在该页面中,您需要添加一些元数据来描述应用程序将处理它:

    <html>
    <head>
        <meta property="al:ios:url" content="example://applinks" />
        <meta property="al:ios:app_store_id" content="12345" />
        <meta property="al:ios:app_name" content="Example App" />
        <meta property="og:title" content="example page title" />
        <meta property="og:type" content="website" />
        <!-- Other headers -->
    </head>
    <!-- Other HTML content -->
    </html>
    </head>
    

    【讨论】:

    • 感谢您的回答。只是为了验证,我应该在 al:ios:url 上放什么?它在 facebook 文档中说它是“将用于启动您的应用程序的自定义 URL”。那么那个网址应该是什么,它有一个模式还是我应该在哪里制作那个网址?
    • 嗯,我认为这不是因为在检查 url 的元标记时它会在developers.facebook.com/tools/debug/og/object 中出现错误,并且它说“将用于启动您的应用程序的自定义 URL”所以我猜猜这不是打开应用商店的网址。
    • 不,我已经检查了现有的 iOS 应用程序 URL,它运行良好,伙计!要进行测试,只需转到developers.facebook.com/tools/debug/og/object 并将您的应用商店 URL 放入“输入 URL”框中,然后单击“获取新的报废信息”。您将在那里获得所有信息。
    • 对象调试器不会出现错误,但您不能直接使用 FBSDKAppInviteContent 中的应用商店 url,因为您说过我需要将我的网站放在类似 [[FBSDKAppInviteContent alloc] initWithAppLinkURL: [NSURL URLWithString:"mywebsite.com"l]]; 带有元标记但将您的应用商店 URL 放入 al:ios:url 元标记中会在对象调试器中检查它时导致错误,或者您能告诉我您的 al:ios:url 是什么吗喜欢将它用于 ios 应用程序时?
    • 如果您不想托管这些或没有网站,您可以使用 Facebook 的托管链接 developers.facebook.com/docs/applinks/hosting-api 或像 branch.io 这样的深度链接工具
    【解决方案2】:

    对于那些想知道并询问它是如何工作的人,appLinkUrl 不是市场上您的应用的网址。我就是这样做的。

    • 您需要制作自己的 appLinkUrl 并将其放入您的 info.plist(见:http://iosdevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html) 您将用于深度链接。
    • 那么在你在 info.plist 中声明它之后,你必须至少有 一个 html 网页,您可以在其中放置 appLinks 的元标记 ios 或 android(https://applinks.org)。请注意,您放在 info.plist 上的 appLinkUrl 应该与 meta property="al:ios:url
    • 上的相同
    • 使用 facebook url 调试器调试您的网站 url 并检查您的元标记。按“获取新的抓取信息”以更新元标记以进行任何更改。
    • 使用具有元标记的网页链接,并像在示例中一样使用它 在 Facebook 文档上

      FBSDKAppInviteContent *content =[[FBSDKAppInviteContent alloc] init]; content.appLinkURL = [NSURL URLWithString:@"your_website_link_with_metatags"];

    • 只要确保您的元标记包含正确的信息,那就是 它!

    【讨论】:

    • Shane,您能否在答案中添加完整的元数据。是的,您不需要使用它添加真实数据。但这对我会有帮助。邀请朋友时我仍然收到错误消息。
    • 好的,现在我不再出错了。即使它在成功邀请后向我显示一个复选标记,但该邀请通知永远不会显示在 Facebook 中。你能帮我解决这个问题吗?
    • 您的 Facebook 应用程序是否在 developers.facebook.com 上正确配置?是否将“单点登录”标记为 YES,也将其他标记为 YES。
    • 在沙盒环境下能用吗?我的应用程序已经在 appstore 上。对于下一个版本,我启用了深度链接,现在没有出现错误,但没有发送邀请。
    • 沙盒应该和它无关,再试试看步骤。
    【解决方案3】:

    除了其他答案,很高兴知道您可以使用https://developers.facebook.com/tools/debug/ 来刷新您的应用链接网址的抓取信息。如果您最初在元标记中放置了错误的值,除非您转到该链接并明确刷新它,否则它不会立即刷新。

    【讨论】:

    • 感谢这个...让我永远明白为什么缓存没有更新!
    • 你真的救了我的命。 +1 这么多。
    【解决方案4】:

    也许 Facebook 应用链接托管 API 会有所帮助

    “如果您的应用程序没有您想要分享到 Facebook 的内容的网站,那么您就没有可以注释以支持应用程序链接的公共 Web URL。

    对于这些类型的应用,Facebook 提供了一个应用链接托管 API,它将为您托管应用链接。借助 Hosting API,您可以为您支持的所有移动环境创建和管理应用链接。”

    来源: https://developers.facebook.com/docs/applinks/hosting-api

    【讨论】:

      【解决方案5】:

      添加元标记可以解决这个问题,这是通过 FB 创建的应用链接中的 html 的 sn-p。 Fb 在其应用链接 url 页面上添加了一些额外的元标记,如果在浏览器上打开,它还会直接重定向到 iTunes。

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

      【讨论】:

      • @Sushil 您需要创建一个html资源文件并将其添加到您的网页中不需要在您的网站中提供指向此页面的扩展链接,然后在您添加应用程序链接的代码中提供链接到包含此代码的页面。它会正常工作的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-23
      • 1970-01-01
      • 2012-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多