【问题标题】:Unity Facebook integration - Screenshot posting IssuesUnity Facebook 集成 - 截图发布问题
【发布时间】:2015-05-09 09:36:52
【问题描述】:

我一直在寻找如何在 Facebook 时间轴上发布 Unity 的屏幕截图。

到目前为止我在哪里:

  • 我可以截图
  • 我可以用FB.API()将它上传到相册
  • 我可以从回调中挤出photoID

当我尝试使用photoID时问题就开始了

了解情况的几件事:

  • 从我的FB.API() 上传的图片中复制/粘贴上面提到的网址和photoID,让我在浏览器中找到正确的图片。

  • 但在 Unity 中尝试相同的链接会产生问号(我猜找不到图片)

  • 使用图片的永久链接在 Unity 中完美工作,但这样我就不能用 PhotoID 引用它(我还研究了权限问题,我正在使用一个临时令牌,允许我做 @ 987654327@)

我的目标是: 我想在用户的时间线上使用 facebook SDK 从 Unity 发布屏幕截图。我将使用 Unity WebGL。

编辑:根据 CBroe 的建议,我将对帖子的 Open Graph 标记解决方案进行研究,我将继续发布帖子。

【问题讨论】:

  • 如果您已经将照片上传到用户的其中一个相册,那您为什么需要再次将其发布到他们的时间线?
  • 为什么不能同时使用永久链接和照片ID?
  • @MaxYankov 可能我对永久链接的理解还不完整...我打开相册中的 FB 图片时发现的永久链接非常随机且不包含 PhotoID,所以在代码中我不能参考它。你会怎么做?
  • @CBroe 因为时间轴帖子是我的雇主想要的。但是使用 FB.FEED 你只能发布一个已经存在的 URL,所以我在手册和线程中找到的唯一解决方案是上传并将其反馈到时间线。此外,我认为最终它会将屏幕截图上传到应用程序的相册并将其反馈给用户的时间线。加上一个原因>>在使用 FB.API() 上传相册照片时,我相信您不能提供标题、名称详细信息。
  • 如果您上传照片,它会自动显示在他们的时间线和朋友的新闻源中;您不应该在多个变体中以相同的内容充斥它们 - 所以选择一个。 “我的雇主想要这个”并不是垃圾邮件的理由。

标签: facebook facebook-graph-api unity3d facebook-unity-sdk


【解决方案1】:

我找到了自己问题的答案:

因此,使用 facebook 上任何图片的真实 URL,您可以执行 FB.FEED() 正如您可以在上面的 cmets 中阅读的那样,请确保您的应用不会向用户的时间线发送垃圾邮件。最好听从 CBroe 的建议。 但是,如果您仍然对如何准确获取实际 URL 感兴趣,这里是我的分步说明:

  1. 获取你需要的照片ID的真实URL(通常回调结果包含)。
  2. 使用 FB.API("YOUR_PHOTO_ID?fields=source", Facebook.HttpMethod.GET, YourCallBack);
  3. 在 YourCallBack 函数中,FBResult 将包含一个 JSON 对象,该对象在源键下具有您的真实 URL。
  4. 如果您知道如何将 JSON 字符串反序列化为字典,那么请这样做,如果不使用 Google 搜索:D,或者下载包含反序列化脚本的 Util.cs。我获得源代码的方式是我编辑了 Util.cs,因为 DeserializeJSONProfile 函数专注于“first_name”,因此复制/粘贴该函数将其重命名为 DeserializeJSONSource,并将“fist_name”更改为“source”。然后从 Unity Util.DeserializeJSONSource(YOUR_FBRESULT.Text) 调用它。

然后,您分配结果的字典也将包含键:“source”。

(我在发布 FB.API() 时也尝试获取相同的源信息,但我无法将其挤出。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-30
    • 1970-01-01
    • 1970-01-01
    • 2012-11-17
    • 1970-01-01
    • 2016-11-19
    • 2013-10-14
    相关资源
    最近更新 更多