[英]pass parameter to AsyncTask<String, Void, Void>
我是构建Android应用程序,它应该打开条形码扫描仪屏幕并扫描条形码,然后将条形码字符串发送到web服务。 我已经完成了条码阅读部分,将静态字符串发送到webservice。 我正在异步地向webservice发送字符串。
这是我的代码
public class AsyncCallWS extends AsyncTask<String, Void, Void> {
@Override
protected Void doInBackground(String... params) {
try {
execute__barcode_webservice();
} catch (Exception e) {
// TODO: handle exception
}
return null;
}
@Override
protected void onPostExecute(Void result) {
}
@Override
protected void onPreExecute() {
}
@Override
protected void onProgressUpdate(Void... values) {
}
}
我需要将两个字符串传递给“execute__barcode_webservice()”
这就是我调用asynctask发送字符串的方法。
AsyncCallWS soap_object = x.new AsyncCallWS();
soap_object.execute();
如何将两个字符串传递给soap_object然后执行_barcode_webservice()
soap_object.execute(new String []{"StringOne","StringTwo"});
你也可以这样做:
soap_object.execute("StringOne","StringTwo");
在doInBackground
,params是一个varargs参数,所以只需:
execute__barcode_webservice(params[0], params[1]);
试试这个..
AsyncCallWS soap_object = x.new AsyncCallWS();
soap_object.execute(new String []{"String_one","String_two"});
然后在doInBackground中
execute__barcode_webservice(params[0],params[1]);
您还可以传入一个字符串数组,以便:
new String[] info = ...
soap_object.execute(info);
你也可以使用Parameterobjects,看看这个帖子,回答David Wasser: 你如何将多个原始参数传递给AsyncTask?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.