2013-09-25 5 views
0

인 텐트를 통해 번들을 전달하고 활동을 시작했지만 실행되지 않습니다. 로그의 예외는활동을 시작할 수 없습니다.

09-25 21:11:44.514: E/AndroidRuntime(426): FATAL EXCEPTION: main 
09-25 21:11:44.514: E/AndroidRuntime(426): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.x.y.httpcommunicationhelper2/com.x.y..httpcommunicationhelper2.logout}: java.lang.NullPointerException. 

입니다. 오류를 지적 해주십시오. ? 당신이 도울 수있는 코드는 다음과 같습니다

//Intent part 
if (result != null) { 
    Intent tokenIntent = new Intent(mContext, tokenActivity.class); 
    Bundle bundle = new Bundle(); 
    bundle.putString("responsedata", result.substring(result.indexOf("=") + 1, result.length())); 

    tokenIntent.putExtras(bundle); 
    startActivity(tokenIntent); 


    //logout class 

    public class logout extends Activity { 

     TextView logouttext; 
     Bundle bundle2; 
     Context mContext; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main3); 

      mContext = this; 
      logouttext = (TextView) findViewById(R.id.tvlogout); 
      bundle2 = getIntent().getExtras(); 

      Log.i("logout - ats token", bundle2.getString("responsedata")); 

      URLconnector ss = new URLconnector(); 
      ss.execute("url"); 

     } 


     private class URLconnector extends AsyncTask < String, Void, String > { 

      @Override 
      protected String doInBackground(String...urls) { 
       String response = ""; 
       for (String url: urls) { 

        DefaultHttpClient httpclient = new DefaultHttpClient(); 
        HttpPost httppost = new HttpPost(url); 
        try { 

         List <NameValuePair> postParameters = new ArrayList <NameValuePair>(); 

         postParameters.add(new BasicNameValuePair("appID", "hjbhjbh")); 
         postParameters.add(new BasicNameValuePair("atsToken", bundle2.getString("responsedata"))); 

         Log.i("logout - ats token", bundle2.getString("responsedata")); 


         UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(
          postParameters); 

         httppost.setEntity(formEntity); 


         HttpResponse logoutresp = httpclient.execute(httppost); 
         Log.i("Logout response ", logoutresp.toString()); 

오류 로그는 다음과 같습니다

09-25 21:11:44.514: E/AndroidRuntime(426): FATAL EXCEPTION: main 
09-25 21:11:44.514: E/AndroidRuntime(426): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.x.y.httpcommunicationhelper2/com.x.y..httpcommunicationhelper2.logout}: java.lang.NullPointerException 

09-25 21:11:44.514: E/AndroidRuntime(426): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.os.Handler.dispatchMessage(Handler.java:99) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.os.Looper.loop(Looper.java:123) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.app.ActivityThread.main(ActivityThread.java:3683) 
09-25 21:11:44.514: E/AndroidRuntime(426): at java.lang.reflect.Method.invokeNative(Native Method) 
09-25 21:11:44.514: E/AndroidRuntime(426): at java.lang.reflect.Method.invoke(Method.java:507) 
09-25 21:11:44.514: E/AndroidRuntime(426): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
09-25 21:11:44.514: E/AndroidRuntime(426): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
09-25 21:11:44.514: E/AndroidRuntime(426): at dalvik.system.NativeStart.main(Native Method) 
09-25 21:11:44.514: E/AndroidRuntime(426): Caused by: java.lang.NullPointerException 
09-25 21:11:44.514: E/AndroidRuntime(426): at com.x.y.httpcommunicationhelper2.logout.onCreate(logout.java:52) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
09-25 21:11:44.514: E/AndroidRuntime(426): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) 
+2

52 번 라인에는 무엇이 있습니까? – Ahmad

+0

로그 아웃 활동을 어떻게 수행하는지 보여줄 수 있습니까? 당신의'bundle2'이 비어있을 수 있습니까? 만약 내가 맞다면 여기보세요. http://stackoverflow.com/questions/5944503/android-getintent-getextras-returns-null 관련이 있습니다 – user902383

+0

@Ahmad Log.i ("logout - ats token", bundle2.getString ("responsedata"))); – androidnoob

답변

0

변경 라인 :

bundle2 = getIntent().getExtras(); 

Log.i("logout - ats token", bundle2.getString("responsedata")); 

또한 것이다

bundle2 = getIntent().getExtras(); 
if (bundle2 != null) { 
     Log.i("logout - ats token", bundle2.getString("responsedata")); 
} 

에코드를 변경해야합니다..

+0

오류가 사라졌습니다. URL 커넥터에서 어떤 변경을해야합니까? 로그 아웃의 아무 것도 실제로 기록되지 않습니다. 정말 고마워. – androidnoob

+0

비슷한 일,'bundle2'이 null 일 수 있으므로 null이 아닌지 확인하십시오. – Szymon

+0

로그 아웃의 아무것도 현재 로깅되지 않습니다. 네트워크 응답도 없습니다. – androidnoob

관련 문제