Я создаю игру для Android, которая интегрируется с facebook для извлечения их фотографии и имени и другой информации с использованием графика, я узнал, как получить их фотографию, используя приведенный ниже код, который отлично работает, но я изо всех сил пытаюсь найти работу примеры извлечения другой информации, такой как first_name и т.д....
Код, который я использую для получения фотографии и отображения ее в ImageView, приведен ниже.
public void showPhoto(View v) {
try {
ImageView MyProfilePicImageView = (ImageView)findViewById(R.id.temp);
URL MyProfilePicURL = new URL("https://graph.facebook.com/me/picture?type=normal&method=GET&access_token="+ access_token );
Bitmap MyprofPicBitMap = null;
try {
MyprofPicBitMap = BitmapFactory.decodeStream(MyProfilePicURL.openConnection().getInputStream());
MyProfilePicImageView.setImageBitmap(MyprofPicBitMap);
}
catch (IOException e) {
e.printStackTrace();
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
Я искал высокий и низкий, но не могу найти информацию о том, как получить другую информацию, используя график, другую информацию, означающую first_name и т.д., Включая здесь, на веб-сайте разработчика facebook (https://developers.facebook. com/docs/reference/api/), но не может найти рабочий пример.
Может ли кто-нибудь показать мне рабочий пример для извлечения first_name пользователя, чтобы я мог отображать его в текстовом виде?
используя этот URL-адрес "https://graph.facebook.com/me/friends?access_token="+accessToken
вы можете получить своих друзей, которые содержат их имена и идентификаторы, чтобы получить информацию о любом из них, просто используйте" https://graph.facebook.com/"+yourFriendId+"?access_token="+accessToken 'это вернет json, что вы сможете анализировать и использовать
пример
HttpClient httpclient = new DefaultHttpClient();
String url = "https://graph.facebook.com/me/friends?access_token=" + URLEncoder.encode(token);
HttpGet httppost = new HttpGet(url);
try {
HttpResponse response = httpclient.execute(httppost);
// to get the response string
BufferedReader reader = new BufferedReader(
new InputStreamReader(
response.getEntity().getContent(), "UTF-8"));
// used to construct the string
String res = "";
for (String line = null; (line = reader.readLine()) != null;) {
res += line + "\n";
}
// here we will parse the response
JSONObject obj = new JSONObject(new JSONTokener(res));
JSONArray data = obj.getJSONArray("data");
int len = data.length();
for (int i = 0; i < len; i++) {
JSONObject currentResult = data.getJSONObject(i);
String name = currentResult.getString("name");
String icon = currentResult.getString("id");
// do what ever you want
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Если вы измените URL-адрес своего запроса на "just /me
(т https://graph.facebook.com/me?type=normal&method=GET&access_token=...
), вы получите всю доступную информацию профиля для текущего пользователя, https://graph.facebook.com/me?type=normal&method=GET&access_token=...
проверку подлинности.
Этот объект JSON должен иметь first_name
и last_name
, среди других атрибутов здесь.
Проверьте этот удобный инструмент API-анализатора, чтобы поиграть с тем, что вы должны видеть.