NullPointerException, при попытке извлечь значения из объекта JSON, используя api facebook graph? - PullRequest
0 голосов
/ 17 июня 2011

Я пытаюсь получить значения из объекта Json, но получаю исключение. Я пытаюсь получить информацию о своем профиле в Facebook, используя api графа Facebook.

ProfileRequestListner.java

public void onComplete(final String response, final Object state)
{

    try 
    {
        // process the response here: executed in background thread
        Log.d("Facebook-Example", "Response: " + response.toString());
         JSONObject json = Util.parseJson(response);

        final String name = json.getString("name");



      Bundle b = new Bundle();
       b.putString(SoapboxApplication.FIRST_NAME, name);
      //  b.putString(SoapboxApplication.LAST_NAME,last_name);
       com.android.soapbox.SoapboxApplication.mListener.**ProfileInfoAvailable**(b);
    }

    catch (JSONException e) 
    {
        Log.w("Facebook-Example", "JSON Error in response");
        Log.e("Facebook-Example", "JSON Error in response"+e.fillInStackTrace());
    } 
    catch (FacebookError e) 
    {
        Log.w("Facebook-Example", "Facebook Error: " + e.getMessage());
    }
}

ProfileInfoAvailable(Пакет b) определяется как

public class ProfileInfoListner extends Activity implements ProfileEventListener
{
public EditText mFirstNameTextBox  ;
public TextView mLastNameTextBox;


public void ProfileInfoAvailable(Bundle b)
{
 Log.e("Facebook-Example", "HGGGGGGGGGGGGGGGGGGG"); 

try
{
    for (String key : b.keySet()) 
    {
        if(key.compareTo(SoapboxApplication.FIRST_NAME) == 0)
        {
            Log.e("Facebook-Example", "IIIIFFFFFFFFFFFFFFF");   
            //Assuming mFirstNameTextBox points to the textbox on PRofile screen

            mFirstNameTextBox.setText(b.getString(key));       


        }
        else if(key.compareTo(SoapboxApplication.LAST_NAME) == 0) 
        {

            //Assuming mLastNameTextBox points to the textbox on Profile screen
            mLastNameTextBox.setText(b.getString(key));  


        }
}   
}
catch(NullPointerException c)
{
    Log.e("EEEEERRROOROROROORR",""+c.fillInStackTrace());
}

}   
}

Что с этим не так. ??Любая помощь будет высоко присваиваться.

1 Ответ

1 голос
/ 17 июня 2011

Нулевым является также EditText mFirstNameTextBox (и следующие TextView), так как вы не инициализируете их ни к чему, как я вижу.

Если вы определяете их в файле XML,используйте LayoutInflater и метод findViewById(), чтобы получить ссылку на эти ресурсы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...