Android - Asynctask完成时的下一个活动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android - Asynctask完成时的下一个活动相关的知识,希望对你有一定的参考价值。

我一直在尝试创建一个POSTS到php服务器的简单应用程序。我想创建一个可以处理所有发布请求然后将数据返回到原始活动的单个类。

目前我有一个名为ConectionHandler的类,用于处理所有Post请求。

public class ConnectionHandler extends AsyncTask<String, Void, String> {

public ConnectionHandler(ArrayList targetList, ArrayList dataList, String hostLocation){
    ...
}

protected String doInBackground(String... params){
    ...
    return returnData;
}

我一直在从loginActivity创建一个对象ConnectionHandler。一旦我在doInBackground方法中收到数据,我希望它返回到loginActivity,以便我可以处理它并开始一个新的活动。

有没有简单的方法来做到这一点?我已经尝试了很多不同的想法,到目前为止似乎都没有。

答案

您是否尝试过在AsyncTask中使用onPostExecute方法?当您从doInBackground返回一个值时,它将被发送到onPostExecute,该onPostExecute在主UI线程上运行。

public class ConnectionHandler extends AsyncTask<String, Void, String> {

    public ConnectionHandler(ArrayList targetList, ArrayList dataList, String hostLocation){
        ...
    }

    protected String doInBackground(String... params){
        ...
        return returnData;
    }

    @Override
    protected void onPostExecute(String result) {
       //do whatever you want with the data here 
    }    
}

以上是关于Android - Asynctask完成时的下一个活动的主要内容,如果未能解决你的问题,请参考以下文章

Android 多线程 AsyncTask 完成后台任务并反馈给UI

Android AsyncTask 等待其他函数完成

查找此异常原因的下一步是啥?

对值求和,直到条件的下一次出现

Android - 仅在 AsyncTask 未完成时单击按钮时显示进度对话框

找到能立刻开始的下一步行动 |进击