我要求不止一次执行Asynctask
。因此,我每次都在创建Asynctask
的新实例。伪代码在
public void sendToServer(final String messagetoSend,Context context){
AsyncHttpPost wst = new AsyncHttpPost(messagetoSend);
wst.execute();
System.out.println("GET OUT");
System.out.println("SENDING TO SERVER");
}
我从sendToServer
方法调用onResume
函数。 Asynctask
第一次被执行并且没有失败。但这是第二次,它没有被执行。我在logcat中得到了GETOUT和SENDING TO SERVER语句。但任务没有得到执行。让我知道我失踪的地方。谢谢你的帮助。
答案 0 :(得分:0)
你只是在这里打电话一次。要再次调用它,您必须在上一个旁边添加另一个wst.execute()
语句,如下所示: -
public void sendToServer(final String messagetoSend,Context context){
AsyncHttpPost wst = new AsyncHttpPost(messagetoSend);
wst.execute();
wst.execute();
System.out.println("GET OUT");
System.out.println("SENDING TO SERVER");
}
答案 1 :(得分:0)
只需编写新的AsyncHttpPost(messagetoSend).execute()而不是其他3行。如果你想要定位不同的版本,只需创建一个if语句来检查你设备的版本,并使用其中一个或另一个补充。