【发布时间】:2012-08-12 18:40:45
【问题描述】:
谁能给我一个例子,如何使用来自 Android 设备的 java 创建相册并将照片上传到 facebook 相册? 我找到了一种如何将照片一张一张上传到 facebook 墙的方法,但没有找到创建相册和上传照片的方法。
非常感谢,
【问题讨论】:
-
如果一个答案解决了您的问题,您应该接受它。这就是 SO 的工作原理。
标签: java android facebook photos
谁能给我一个例子,如何使用来自 Android 设备的 java 创建相册并将照片上传到 facebook 相册? 我找到了一种如何将照片一张一张上传到 facebook 墙的方法,但没有找到创建相册和上传照片的方法。
非常感谢,
【问题讨论】:
标签: java android facebook photos
我们的开发者博客有一个nice tutorial,介绍如何使用 Graph API 上传照片。尽管代码是用 PHP 编写的,但您可以轻松地将示例代码翻译成 Java。教程的相关部分可能是场景2:创建新相册并添加照片。
要使用我们的 Graph API 创建新专辑,您首先需要拥有一个具有 publish_stream 权限的访问令牌。然后创建新专辑:
Bundle params = new Bundle();
params.putString("name", "My Test Album Name Here");
params.putString("message", "My Test Album Description Here");
mAsyncRunner.request("me/albums", params, "POST", new CreateAlbumListener());
然后在您的CreateAlbumListener 类中,在onComplete() 方法中获取新创建的专辑ID。获得刚刚创建的相册的相册 ID 后,将照片上传到该相册:
1) 上传本地照片(例如来自图库),假设我们有一个变量data,即我们希望上传的照片的字节数组
Bundle params = new Bundle();
params.putByteArray("photo", data);
params.putString("caption", "Test description here");
mAsyncRunner.request("ALBUM_ID/photos", params, "POST");
2) 从远程上传(例如照片的 URL)
Bundle params = new Bundle();
params.putString("url", "http://www.lolbrary.com/content/454/facebook-cat-9454.jpg");
params.putString("caption", "Cats are awesome");
mAsyncRunner.request("ALBUM_ID/photos", params, "POST");
ALBUM_ID 是存储您刚刚创建的专辑的专辑 ID 的变量。您可以查看 HackBook,这是我们创建的示例应用程序,用于向您展示您可以使用 android SDK 执行的所有不同调用。
如果有帮助,请告诉我。
【讨论】:
CreateAlbumListener 中,您必须实现onComplete 方法。 onComplete方法有一个String变量叫response,解析onComplete方法中的response提取专辑id。让我知道这是否有帮助!