试图获取用户的个人资料信息我得到错误:需要Captcha(VK Android SDK)

时间:2013-01-07 17:12:33

标签: java android api vk

我使用的是VK Android SDK(com.perm.kate.api)https://bitbucket.org/ruX/android-vk-sdk/overview

我在一天之后提供的代码的最后一行开始返回KException。

从文档中: 如果某种操作过于频繁地完成,那么对API的请求可能会返回错误“Captcha needed”。用户需要输入图像中的代码,并在请求参数中使用输入的Captcha代码再次发送请求:

  • captcha_sid - 验证码标识符captcha_img
  • 链接到应向用户显示的图像,以便他们可以从图像中输入文字。

问题是我应该在哪里输入这些参数? 我使用该方法获取不包含这些参数的用户配置文件:

public ArrayList<User> getProfiles(Collection<Long> uids, Collection<String> domains, String fields, String name_case) throws MalformedURLException, IOException, JSONException, KException

获取用户个人资料的代码:

Api vkApi=new Api(account.access_token, Constants.API_ID);
//get user
Collection<Long>userIds=new ArrayList<Long>();
userIds.add(account.user_id);
ArrayList<User> users=vkApi.getProfiles(userIds, null, null, null); //KException

1 个答案:

答案 0 :(得分:1)

您需要设置所有参数。不为null但是带有空字符串的数组和空字符串。我的例子:

Collection<Long> u = new ArrayList<Long>();
u.add(user_id);
Collection<String> d = new ArrayList<String>();
d.add("");

response = vkApi.getProfiles(u, d, "", "", "", "");