gpt4 book ai didi

android - 如何从android中的异步任务返回值

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:11:57 27 4
gpt4 key购买 nike

我创建了一个异步任务来调用我的服务器从数据库中获取数据。
我需要处理从 http 服务器调用返回的结果。
从我的 Activity 中,我在很多地方调用了异步任务。所以我不能使用成员变量来访问结果。有什么办法吗?

public Result CallServer(String params)
{

try
{
new MainAynscTask().execute(params);
}
catch(Exception ex)
{
ex.printStackTrace();
}
return aResultM;//Need to get back the result

}

private class MainAynscTask extends AsyncTask<String, Void, Result> {


@Override
protected Result doInBackground(String... ParamsP) {
//calling server codes
return aResultL;
}
@Override
protected void onPostExecute(Result result) {
super.onPostExecute(result);
//how i will pass this result where i called this task?
}

最佳答案

在调用execute() 方法后尝试调用AsyncTask 的get() 方法。这对我有用

http://developer.android.com/reference/android/os/AsyncTask.html#get()

public Result CallServer(String params)
{
try
{
MainAynscTask task = new MainAynscTask();
task.execute(params);
Result aResultM = task.get(); //Add this
}
catch(Exception ex)
{
ex.printStackTrace();
}
return aResultM;//Need to get back the result

}
...
...

关于android - 如何从android中的异步任务返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15739635/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com