可以获取Picasa Feed,可以上传和下载 - 无法删除

时间:2012-07-23 22:43:52

标签: android gdata picasa

我正在使用Yaniv Inbar的GData客户端从Android应用访问Picasa相册。我通过

验证
AccountManager.getAuthToken(account, "lh2", null, activity, null, null);

可以获取用户和相册Feed,以及下载和上传图片。我不能做的是PicasaClient.executeDelete(Entry) - 尽管使用了getFeed和上传/下载操作使用的完全相同的身份验证,它仍然会给我403错误。

我是否需要设置client_idclient_secret进行删除但不能获取/放置?如果是的话,在哪里? Authenticating to OAuth2 Services显示

URL url = new URL("https://www.googleapis.com/tasks/v1/users/@me/lists?key=" + your_api_key);
URLConnection conn = (HttpURLConnection) url.openConnection();
conn.addRequestProperty("client_id", your client id);
conn.addRequestProperty("client_secret", your client secret);
conn.setRequestProperty("Authorization", "OAuth " + token);

但我在堆栈中的任何地方都看不到URLConnection。我猜测钩子将在

中的某个地方
authToken = authBundle.getString(AccountManager.KEY_AUTHTOKEN);
ClientLogin.Response clientLogin = new ClientLogin.Response();
clientLogin.auth = authToken;

......但在哪里并不明显。

1 个答案:

答案 0 :(得分:1)

叹息。这是100%的医源性。

我使用“编辑”链接创建了条目,如

https://picasaweb.google.com/data/entry/api/user/%s/albumid/%s/photoid/%s

但将etag设置为null,因为我在专辑Feed中获得的etags似乎会以某种方式被截断。

我一更换

photoEntry.etag = null;

photoEntry.etag = "*";
一切都很顺利。