Java 如何从android中的执行函数获取返回值?

Java 如何从android中的执行函数获取返回值?,java,android,android-studio,Java,Android,Android Studio,在android中,是否可以从execute中运行的函数中获取返回值 调用文件 Connector connector = new Connector(); connector.execute("login", ipPop.getText().toString(), username.getText().toString(), password.getText().toString()); public class Connector extends AsyncTask&

在android中,是否可以从execute中运行的函数中获取返回值

调用文件

Connector connector  = new Connector();
connector.execute("login", ipPop.getText().toString(), username.getText().toString(), password.getText().toString());
public class Connector extends AsyncTask<String,Void,Void>{
    @Override
    protected Void doInBackground(String... voids) {
        return false;
    }
}
功能文件

Connector connector  = new Connector();
connector.execute("login", ipPop.getText().toString(), username.getText().toString(), password.getText().toString());
public class Connector extends AsyncTask<String,Void,Void>{
    @Override
    protected Void doInBackground(String... voids) {
        return false;
    }
}
公共类连接器扩展异步任务{
@凌驾
受保护的Void doInBackground(字符串…Void){
返回false;
}
}

您正在Android中使用AsyncTask。当您的类扩展它时,您可以重写另外3个方法。在这里,您可以覆盖
onPostExecute
,它与doInBackground返回的数据一起传递。因为onPostExecute在UI线程上运行,所以您可以从那个里更新UI,就像取消progressbar一样

@Override
protected void onPostExecute(String result) {
   // "result" is data return from doInBackground method
   // execution of result of Long time consuming operation
       
}


根据最新的android版本,AsyncTask已被弃用,请避免使用它

@303所以,我从你的话中了解到,使用替代方案应该更好,但是因为我时间不够,我认为我应该先使用AsyncTask,然后在项目维护期间切换到替代方案。请问,这是否意味着我可以使用
onPostExecute
将值返回到调用
execute
的函数?好的。不,直接通过异步任务,您不能。你想要实现什么?您必须尝试登录,对吗?根据成功或失败启动AsyncTask后,请在
onPostExecute
方法中处理UI更改。如果您使用AsyncTask进行API调用,我建议您使用库,如
改型
。这会简单得多。哦。。。我明白了,我想我明白了,谢谢你的帮助