2013-09-24 28 views
0

好時 我的應用程序崩潰試圖做一些與捕獲的異常

try {

  Log.d("request!", "starting"); 
      // getting product details by making HTTP request 
      JSONObject json = jsonParser.makeHttpRequest(LOGIN_URL, "POST", 
        params); 

      // check your log for json response 
      Log.d("Login attempt", json.toString()); 

      } 
     } catch (JSONException e) { 

//錯誤的時候,這裏的惰性CODE!

}<code>

嗨,大家好!我只是想知道爲什麼我的應用程序崩潰時我寫在指定位置碼(見上文)..如果我留空白,什麼都不會發生......

事情是,我想要顯示一個

Toast.makeText(MainActivity.this,「無法到達服務器」,Toast.LENGTH_LONG).show();

爲什麼你認爲這是?在此先感謝

+0

做一個項目清潔(項目 - >清潔),然後再試一次。如果它再次崩潰,請發佈logcat消息。 – prijupaul

+0

請發佈所有相關的代碼和logcat。從這裏,我們沒有辦法知道 – codeMagic

回答

0

我假設,因爲你的錯誤是

「無法到達服務器」

你試圖讓網絡通話,這意味着你的代碼是在一個線程某種?你不能從主線程內觸摸UI元素,因此移動:

Toast.makeText(MainActivity.this, "Couldn't reach the server", Toast.LENGTH_LONG).show(); 

AsyncTaskpostExecute()方法或使用Handler

docs

不要訪問Android的UI來自UI線程之外的工具包。

+0

Yesss :)它的工作,謝謝你們。我是Android新手。如果我不在主線程中,我無法訪問UI元素!得到它了! – feresr

2

您是否嘗試從任何機會從主線外訪問UI元素?嘗試使用Log.v而不是Toast,看看是否有幫助。

+0

Yesss :)發生了什麼,謝謝你們。我是Android新手。如果我不在主線程中,我無法訪問UI元素!得到它了! – feresr

相關問題