小编use*_*757的帖子

为什么onPostExecute在doInBackground在AsyncTask中完成之前执行

我试图创建一个AsyncTask来从服务器端获取一些数据.但是它在onPostExecute()的行中报告了一个Null指针异常"IOUtils.copy((response_.getEntity().getContent()),writer);" 我使用一些日志来查看发生了什么,发现日志1和3被打印但log 2没有.为什么在client.executed()完成之前执行了onPostExecute?有人可以给点建议吗?

private class GetForm extends AsyncTask<String, Integer, Object> {
    private HttpResponse response_;
    private Exception exception_;
    private String url_;

    public GetForm(String url) {
        super();
        url_ = url;
    }
    protected Object doInBackground(String... params) {
        try {
            Log.i("mylog","inside doInbackground 1.");
            HttpClient client = new DefaultHttpClient();
            HttpGet request = new HttpGet(url_);
            response_ = client.execute(request);
                            Log.i("mylog","inside doInbackground 2.");

        } catch (Exception e) {
            exception_ = e;
        }
        return response_;
    }
    @Override
    protected void onPostExecute(Object o) {
        // Your current UI stuff here.
        Log.i("mylog","inside …
Run Code Online (Sandbox Code Playgroud)

android android-asynctask

6
推荐指数
1
解决办法
3161
查看次数

标签 统计

android ×1

android-asynctask ×1