【问题标题】:Sharing to facebook from iOS App and create app name从 iOS 应用分享到 facebook 并创建应用名称
【发布时间】:2015-11-02 02:16:29
【问题描述】:

我可以使用标准分享操作从我的 iOS 应用程序中分享到 Facebook。我见过其他应用程序也这样做。

但是,我在其他应用程序中注意到的是它们的应用程序名称包含在 Facebook 共享帖子中。

如果我在浏览器中点击该链接,它会转到:

https://apps.facebook.com/carousell/?fb_source=feed

如果我在 Facebook 移动应用程序中点击该链接,它会转到应用程序的商店页面。

我可以在 iOS 应用程序中做同样的事情吗?或者它是在网站上标识的东西?如果是这样,我怎样才能做到这一点?

【问题讨论】:

    标签: ios facebook facebook-graph-api


    【解决方案1】:

    我不确定我是否理解您的问题,但看着您的两张图片,我的印象是您正在尝试使用用户设备上的 Facebook 应用发布到用户的墙上,而“Carousell”应用正在创建以编程方式发布帖子。我不确定是否可以将 Facebook 应用程序设置为包含有关调用发布操作的应用程序的元数据,但我知道如何以编程方式进行操作。一种方法是创建一个“故事”帖子(我意识到 Carousell 在这里不是这样做的;仅以此为例)。

    要创建故事帖子,您首先需要在开发者门户中设置故事。为此,请登录您的 Facebook 开发者门户并选择您的应用。然后从左侧的菜单中选择“打开图表”。我不会费心解释如何从这里创建一个真实的故事,因为它非常简单。创建故事后,单击“获取代码”以查看您需要的代码 sn-ps。

    这是我的一个应用程序中的一个示例。在这种情况下,我在 imagePickerController:didFinishPickingMediaWithInfo: 委托方法中执行所有这些操作。我正在为故事创建对象、动作和内容,然后通过共享对话框将其呈现给用户:

            UIImage *image = info[UIImagePickerControllerOriginalImage];
    
            FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init];
            photo.image = image;
            photo.userGenerated = YES;
    
            NSDictionary *properties = @{
                                         @"og:type": @"appNamespace:objectTypeName",
                                         @"og:title": @"Type Title",
                                         @"og:description": @"Facebook story post!",
                                         @"og:url": @"http://samples.ogp.me/bignumber",
                                         @"og:image": @[photo]
                                         };
            FBSDKShareOpenGraphObject *object = [FBSDKShareOpenGraphObject objectWithProperties:properties];
    
            FBSDKShareOpenGraphAction *action = [[FBSDKShareOpenGraphAction alloc] init];
            action.actionType = @"appNamespace:objectTypeName";
            [action setObject:object forKey:@"objectTypeName"];
    
            FBSDKShareOpenGraphContent *content = [[FBSDKShareOpenGraphContent alloc] init];
            content.action = action;
            content.previewPropertyName = @"objectTypeName";
    
            [FBSDKShareDialog showFromViewController:someViewController
                                         withContent:content
                                            delegate:self];
    

    这种方法将创建一个“故事”帖子,其中还包含您的应用名称和指向您的应用的链接。我重新 大部分代码将在 Facebook 开发人员门户上为您自动生成,但使用默认代码并通过以编程方式发布到您的时间线进行试验,直到您获得所需的结果。在您的故事获得批准之前,除了您的应用测试人员之外,没有其他人可以看到这些帖子,或者至少这是我迄今为止的经验。我希望这有助于回答你的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-27
      • 1970-01-01
      • 1970-01-01
      • 2017-01-30
      • 2016-12-02
      • 2015-02-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多