我正在尝试打开Facebook Messenger,以从我的iOS应用发送消息。我当前正在运行FaceBook SDK 4.37.0版。根据{{3}},这应该是可能的。它说
人们还可以通过Messenger Expression Platform将内容从您的应用程序共享到Facebook Messenger,或者从iOS SDK中的共享消息对话框共享内容。
如果单击iOS - Sharing的链接,它将为您提供以下示例:
FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init];
content.contentURL = [NSURL URLWithString:myFacebookURL];
content.quote = @"My message";
[FBSDKMessageDialog showWithContent:content delegate:self];
我已经实现了这一点以及FBSDKSharingDelegate委托方法:
- (void)sharer:(id<FBSDKSharing>)sharer didCompleteWithResults:(NSDictionary *)results
{
NSLog(@"complete");
}
- (void)sharer:(id<FBSDKSharing>)sharer didFailWithError:(NSError *)error
{
NSLog(@"Sharer Error");
}
- (void)sharerDidCancel:(id<FBSDKSharing>)sharer
{
NSLog(@"Cancelled");
}
永远不会调用委托方法。我希望打开Facebook Messenger对话框,允许我选择要发送消息的朋友。但是什么都没有打开。而且没有错误被记录。
我知道Facebook正在收到一些东西,因为我得到了以下信息:
FBSDKLog: param {
"advertiser_id" = "xxxxxxxxx";
"advertiser_tracking_enabled" = 1;
"anon_id" = "xxxxxxxx";
"application_
tracking_enabled" = 1;
"custom_events" = "[{\"_eventName\":\"fb_mobile_content_view\",\"_logTime\":1541721304,\"fb_description\":\"MY FEATURE Sent\",\"_ui\":\"no_ui\"},{\"_ui\":\"no_ui\",\"_eventName\":\"fb_messenger_dialog_share_show\",\"_logTime\":1541721310,\"_implicitlyLogged\":\"1\",\"fb_dialog_share_content_type\":\"Status\"}]";
event = "CUSTOM_APP_EVENTS";
extinfo = "[\"i2\",\"com.myApp\",\"1\",\"8.3.6\",\"12.0.1\",\"iPhone10,6\",\"en_US\",\"CST\",\"AT&T\",375,812,\"3.00\",6,60,8,\"America\\/Chicago\"]";
"url_schemes" = "[\"myappID\",\"myscheme1\",\"myscheme2\",\"myscheme3\"]";
}
任何帮助或指点将不胜感激。
答案 0 :(得分:0)
FBSDKMessageDialog.show(with: FBSDKShareLinkContent(), delegate: nil)
我遇到了同样的问题,但是实验上我仅通过FBSDKShareLinkContent()作为内容参数和Messenger应用程序启动
您还应该在LSApplicationQueriesSchemes下的Info.plist中添加fb-messenger-share-api密钥