尝试使用捕获的异常执行某些操作时,我的应用程序崩溃了

时间:2013-09-24 01:32:26

标签: android exception jsonexception

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) {

//ERROR WHEN INERTING CODE HERE!.

}<code>

大家好!我只是想知道为什么我的应用程序在指定位置编写代码时崩溃(见上文)..如果我把它留空,没有任何反应...

问题是,我想展示一个

Toast.makeText(MainActivity.this,“无法访问服务器”,Toast.LENGTH_LONG)。show();

为什么你认为那是?提前致谢

2 个答案:

答案 0 :(得分:2)

您是否尝试从主线程外部访问UI元素?尝试使用Log.v而不是Toast,看看是否有帮助。

答案 1 :(得分:0)

我假设因为你的错误是

  

&#34;无法访问服务器&#34;

您正在尝试进行网络调用,这意味着您的代码位于某种线程中?您无法从主线程内部触摸UI元素,因此请移动:

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

进入AsyncTaskpostExecute()方法或使用Handler

来自docs

  

不要从UI线程外部访问Android UI工具包。