使用Facebook的SDK,我正在分享一个类型为“video.watches”的FBSDKShareOpenGraphObject
和FBSDKShareOpenGraphAction
。一切顺利,帖子出现在Facebook的Feed上,但如果我点击应用程序名称,会出现错误。这是我用来分享的代码:
FBSDKShareOpenGraphObject *object = [FBSDKShareOpenGraphObject objectWithProperties:@{@"og:type": @"video.other",
@"og:title": @"TV Show",
@"og:image": @"http://cdn1.tnwcdn.com/wp-content/blogs.dir/1/files/2013/02/tv-set.jpg",
@"og:url": show_url}];
FBSDKShareOpenGraphAction *action = [[FBSDKShareOpenGraphAction alloc] init];
[action setActionType:@"video.watches"];
[action setObject:object forKey:@"video"];
[action setNumber:@(7200000) forKey:@"expires_in"];
FBSDKShareOpenGraphContent *content = [[FBSDKShareOpenGraphContent alloc] init];
[content setPreviewPropertyName:@"video"];
[content setAction:action];
_shareDialog = [[FBSDKShareDialog alloc] init];
_shareDialog.fromViewController = [self.delegate collectionViewControllerForCell:self];
_shareDialog.shareContent = content;
_shareDialog.delegate = self;
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fbauth2://"]]){
_shareDialog.mode = FBSDKShareDialogModeNative;
} else {
_shareDialog.mode = FBSDKShareDialogModeAutomatic;
}
[_shareDialog show];
结果如下:
结果:
但是当我点击 TV Channel(框起来的那个)时,出现了这个错误:
我希望在点击该文本时能够打开原生应用程序,就像在照片上 "X 在 Instagram 上发布了一张照片" 中点击其名称时会打开 Instagram 一样。我已经在 developer.facebook.com 的应用设置中配置了 Bundle ID 和 iPhone Store ID,但没有成功。我错过了什么吗?