2017-06-14 143 views
1

我在Facebook上分享我的信息。我在分享图片,内容网址,说明。我使用此代码共享:Facebook Deep Linking未打开应用程序

FBSDKShareDialog *dialog = [[FBSDKShareDialog alloc] init]; 
dialog.fromViewController = self; 
FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init]; 
content.contentTitle = APP_NAME; 
content.contentDescription = text; 
content.imageURL = [NSURL URLWithString:[[arrAllEvents valueForKey:@"flyer_image"]objectAtIndex:0]]; 
content.contentURL = url; 
dialog.shareContent = content; 
dialog.mode = FBSDKShareDialogModeFeedWeb; 
[dialog show]; 

我能深层链接(新闻供稿链接启动这个应用程式)选项https://developers.facebook.com。 我已经加入我的FBID和URLShema像这样

<key>CFBundleURLSchemes</key> 
      <array> 
       <string>abcevent://</string> 
       <string>fb1......</string> 
      </array> 

和appdelegate.m这样

- (void)applicationDidBecomeActive:(UIApplication *)application { 
    [FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url,NSError *error){ 
     if([[url scheme] isEqualToString:@"abcevent"]) 
     { 
      [self callNewsletter:url]; 
     } 
    }]; 

    [UIApplication sharedApplication].applicationIconBadgeNumber = 0; 
    [FBSDKAppEvents activateApp]; 

} 

添加代码为同一现在如果我通过应用程序分享的FB我的职务。该帖子点击并未在iPhone中打开我的应用程序深层链接无法正常工作。 任何人都可以告诉我有什么其他的东西缺少这个?

+0

请参阅https://stackoverflow.com/questions/32643522/fbsdksharedialog-of-facebook-sdk-is-not-working-on-ios9和https://stackoverflow.com/questions/33290566/facebook-sdk- for-ios-fbsdksharedialog-is-not-shown确保你传递了正确的URL。 –

+0

它不是' abcevent://'是' abcevent' –

+0

canyou显示您的plist –

回答

0

fetchDeferredAppLink方法只适用于广告。它从来没有与“新闻联播”上共享的链接共同工作。你可以阅读从Facebook in this blog post深层链接的更多的限制,但有两个核心事项:

  1. Facebook已经从不支持非付费内容递延深层链接。
  2. Facebook的应用链接标准在一点支持正常的深度链接(意味着如果应用程序已经安装),但这已被打破在iOS很长一段时间。

如果你想要这种功能,你需要一个单独的解决方案,如Branch.io(完全公开:我在分支团队)。

相关问题