谁使用相同的应用程序的Andr​​oid Facebook的API朋友 [英] Facebook API friends who use same app android

查看:136
本文介绍了谁使用相同的应用程序的Andr​​oid Facebook的API朋友的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有c中的检索从Facebook API的所有朋友$ C $,但我想只得到谁使用的应用程序的Facebook好友。 我试图fb.request(我的/朋友栏=安装?);但从来没有过我是否需要额外的许可?

这是我的code:

  jsonUser = fb.request(我的/朋友);
friendObj = Util.parseJson(jsonUser);

friendArray = friendObj.getJSONArray(数据);

好友列表=新的ArrayList<的String [] []>();
的String [] [] friendsToList =新的String [1] [2];
INT friendCount = 0;
字符串FID,FNM;
JSONObject的朋友;

的for(int i = 0; I< friendArray.length();我++){
    //从JSONArray得到一个JSONObject的
    朋友= friendArray.getJSONObject(ⅰ);
    //摘录的JSONObject的字符串
    friendsToList [0] [0] = friend.getString(ID);
    friendsToList [0] [1] = friend.getString(姓名);
    friendlist.add(friendsToList);
    //设置值,我们阵列
    Log.e(测试,+ friendsToList [0] [0] ++ friendsToList [0] [1]);
    friendCount ++;
}
 

解决方案

解决了

  AsyncTask.execute(新的Runnable(){
            公共无效的run(){
                尝试{
                    字符串FQL =SELECT UID,名字从用户的WHERE is_app_user和UID IN(SELECT UID2从朋友哪里UID1 =我());
                    捆绑参数=新包();

                    parameters.putString(查询,FQL);
                    parameters.putString(法,fql.query);
                    parameters.putString(access_token,fb.getAccessToken());
                    串响应= fb.request(参数);
                    JSONArray JSON =新JSONArray(响应);
                    名单=新的ArrayList<的String [] []>();
                    的String [] [] friendsToList =新的String [1] [2];
                    SpinnerList =新的ArrayList<字符串>();
                    字符串TempToSpinnerList =新的String();
                    的for(int i = 0; I< json.length(); ++ I){
                        friendsToList [0] [0] = json.getJSONObject(ⅰ).getString(UID);
                        friendsToList [0] [1] = json.getJSONObject(ⅰ).getString(姓名);
                        TempToSpinnerList = friendsToList [0] [1];
                            list.add(friendsToList);
                            SpinnerList.add(TempToSpinnerList);
                            Log.e(测试,+ friendsToList [0] [1] ++ friendsToList [0] [0]);
                        }
 

I have a code the retrieves all friends from facebook api , but i would like to get only the facebook friends who use application. i tried fb.request("me/friends?fields=installed"); but never worked do i need extra permission ?

Heres my code:

jsonUser = fb.request("me/friends");
friendObj = Util.parseJson(jsonUser);

friendArray = friendObj.getJSONArray("data");

friendlist = new ArrayList<String[][]>();
String[][] friendsToList = new String[1][2];
int friendCount = 0;
String fId, fNm;
JSONObject friend;

for (int i = 0;i<friendArray.length();i++){
    //Get a JSONObject from the JSONArray
    friend = friendArray.getJSONObject(i);
    //Extract the strings from the JSONObject
    friendsToList[0][0] = friend.getString("id");
    friendsToList[0][1] = friend.getString("name");
    friendlist.add(friendsToList);
    //Set the values to our arrays
    Log.e("Tester",""+ friendsToList[0][0]+" "+ friendsToList[0][1]);
    friendCount ++;
}

解决方案

Solved By

AsyncTask.execute(new Runnable() {
            public void run() {
                try{
                    String fql = "SELECT uid, name FROM user WHERE is_app_user  AND uid IN (SELECT uid2 FROM friend WHERE uid1 = me())";
                    Bundle parameters = new Bundle();

                    parameters.putString("query", fql);
                    parameters.putString("method", "fql.query");
                    parameters.putString("access_token",  fb.getAccessToken());
                    String Response = fb.request(parameters);
                    JSONArray json = new JSONArray(Response);
                    list = new ArrayList<String[][]>();
                    String[][] friendsToList = new String[1][2];
                    SpinnerList = new ArrayList<String>();
                    String TempToSpinnerList=new String();
                    for(int i = 0; i < json.length(); ++i){
                        friendsToList[0][0] = json.getJSONObject(i).getString("uid");
                        friendsToList[0][1] = json.getJSONObject(i).getString("name");
                        TempToSpinnerList= friendsToList[0][1];
                            list.add(friendsToList);
                            SpinnerList.add(TempToSpinnerList);
                            Log.e("Test"," "+friendsToList[0][1]+" "+friendsToList[0][0]);
                        }

这篇关于谁使用相同的应用程序的Andr​​oid Facebook的API朋友的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆