2015-03-20 1 views
-1

Я хочу этот объект Graph как Json Response в своем приложении.Как я должен правильно получить данные GraphObject в Json

Попробуйте количество кодов, но он не получит идентификатор, имя и другие детали из ответа.

{ 
    Response: responseCode: 200, 
    graphObject: GraphObject{ 
    graphObjectClass=GraphObject, 
    state={ 
     "id": "1026256607401841", 
     "first_name": "Vanraj", 
     "timezone": 5.5, 
     "email": "[email protected]", 
     "verified": true, 
     "name": "Vanraj Vyas", 
     "locale": "en_US", 
     "link": "https://www.facebook.com/app_scoped_user_id/1026256607401841/", 
     "last_name": "Vyas", 
     "gender": "male", 
     "updated_time": "2015-03-19T09:50:09+0000" 
    } 
    }, 
    error: null, 
    isFromCache: false 
} 

я судимый этот бть не получили данные:

   @Override 
       public void onCompleted(GraphUser user, Response response) { 
        // TODO Auto-generated method stub 


        Log.d("response", ""+response); 

         if(response!=null){ 
          try{ 

           GraphObject graphObject = response.getGraphObject(); 
           JSONObject jsonRespnse = graphObject.getInnerJSONObject(); 
           JSONArray jsonArrayResponse = jsonRespnse.getJSONArray("data"); 

           for(int i = 0; i<jsonArrayResponse.length();i++){ 

            JSONObject jObj = jsonArrayResponse.getJSONObject(i); 

            String id = jObj.getString("id"); 
            String name = jObj.getString("name"); 

            Log.d("ID", id); 
            Log.d("Name",name); 
           } 

          }catch(Exception e){ 
           e.getStackTrace(); 
          }  
         } 
       } 
      }).executeAsync(); 
     }else if(state.isClosed()){ 
      Log.i(TAG, "Logged out..."); 
     } 
    } 

}; 
+0

Может быть, вы можете использовать ObjectMapper? – CodeShadow

+0

, но здесь я получаю использование объекта json .. так как я нахожу пример, как это сделал. – DroidVasu

+0

Я подтвердил ответ, предоставленный на http://jsonformatter.curiousconcept.com/, он вернул Недействительный JSON. Только state = {data} является действительным JSON. так что JSONObject object = response.getState() Надеюсь, это поможет – CodeShadow

ответ

-2

Здесь я получил одно решение. это правильно или нет, что я не знаю, но он работает. Facebook ответ пришел в строке не json, поэтому было трудно получить ответ. , но используя это, мы можем получить информацию об общем профиле.

Используя этот оператор, вы можете хранить функцию GraphObject для JsonObject.

GraphObject graphObject = response.getGraphObject();        
JSONObject object = graphObject.getInnerJSONObject(); 

и вот код из мы получаем Id, Name, Email_Id и т.д.

private void onSessionStateChange(Session session, SessionState state, 
      Exception exception) { 
     // TODO Auto-generated method stub 

     if (state.isOpened()) { 
      Request.newMeRequest(session, new Request.GraphUserCallback() { 

       @Override 
       public void onCompleted(GraphUser user, Response response) { 
        // TODO Auto-generated method stub 

        Log.d("response", "" + response); 

        Toast.makeText(getApplicationContext(), "" + response, 
          Toast.LENGTH_LONG).show(); 

        if (response != null) { 
         try { 

          GraphObject graphObject = response 
            .getGraphObject(); 

           JSONObject object = graphObject.getInnerJSONObject(); 


           String user_id = object.getString("id"); 

           String user_name = object.getString("name"); 

           String email_id = object.getString("email"); 

           String local = object.getString("locale"); 

           String gender = object.getString("name"); 





         } catch (Exception e) { 
          e.getStackTrace(); 
         } 
        } 
       } 
      }).executeAsync(); 
     } else if (state.isClosed()) { 
      Log.i(TAG, "Logged out..."); 
     } 
    } 

}; 
+0

Ответ GraphUser не является объектом JSON, тогда мы должны преобразовать не JSON в JSON с помощью объекта getInnerJson, и мы можем собрать всю необходимую информацию. – DroidVasu

 Смежные вопросы

  • Нет связанных вопросов^_^