我正在使用 Yaniv Inbar 的 GData
客户端从 Android 应用程序访问 Picasa 相册。我通过
AccountManager.getAuthToken(account, "lh2", null, activity, null, null);
并且可以获取用户和相册提要,以及下载和上传图片。我不能做的是 PicasaClient.executeDelete(Entry)
- 尽管使用与 getFeed 和上传/下载操作完全相同的身份验证,但它一直给我一个 403 错误使用。
是否需要设置 client_id
和 client_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
。我猜测钩子(Hook)会在某处
authToken = authBundle.getString(AccountManager.KEY_AUTHTOKEN);
ClientLogin.Response clientLogin = new ClientLogin.Response();
clientLogin.auth = authToken;
...但在何处并不十分明显。
最佳答案
叹息。这是 100% 医源性的。
我创建了带有“编辑”链接的条目
https://picasaweb.google.com/data/entry/api/user/%s/albumid/%s/photoid/%s
但将 etag
设置为 null
,因为我在相册提要中获得的 etag 似乎以某种方式被截断了。
一旦我更换
photoEntry.etag = null;
与
photoEntry.etag = "*";
一切顺利
关于android - 可以获取 Picasa 供稿,可以上传和下载 - 不能删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11621593/