我无法将图像从我的画布应用程序发布到用户的相册中。根据Facebook文档:将图像发布到使用AS3 API的Facebook相册
为了将照片发布到用户的相册,您必须具有publish_stream权限。经授予,您可以通过发出与照片内容和可选说明一个这些HTTP POST请求到图形API的连接上传照片:
- https://graph.facebook.com/USER_ID/photos - 照片将被发布到创建的相册的应用程序。如果您的应用不存在,我们会自动为您的应用创建一个相册。所有以这种方式上传的照片将被添加到同一张专辑中。
- https://graph.facebook.com/ALBUM_ID/photos - 该照片将发布到由ALBUM_ID代表的特定现有相册中。
因此,通过一点一点去,如果我上传这样的图像...
Facebook.api("me/photos",imagePostCallback,{message:"",image:myImageBitmap,fileName:''},URLRequestMethod.POST);
...然后我可以期望它把我的形象命名为专辑我应用程序,它将在必要时创建?
并非如此。
专辑不存在时实际发生的事情是,上传的图像被推送到任何其他现有的专辑中,这些专辑通常用于(并由其他应用程序创建)。这有点痛苦。
到目前为止,我已经试过如下:
- 禁用沙盒模式。我曾认为应用程序可能无法创建新相册,因为它处于沙盒模式,但禁用沙盒模式并没有什么区别,我可以直接使用它启用相册。
- 检查是否存在我的相册并在必要时创建它。如果它不存在,我可以检查我的相册并创建它,但是因为POST调用
Facebook.api
以上传图像将失败,如果它不作为用户交互的直接结果被调用,则我不能上传图像。
所以现在我有点难倒了。很明显,我无法将我的应用程序发布到竞争对手相册的可能性,但目前唯一可以看到的替代方法将涉及如果必须创建专辑,则有效地使用户提交图像两次。有任何想法吗?
你有没有想过如何做到这一点?我有一个类似的问题,我想:http://stackoverflow.com/questions/9815103/as3-facebook-canvas-app-need-to-post-image-to-friends-feed-wall-can-it-be – Ribs