【问题标题】:pass parameter to AsyncTask<String, Void, Void>将参数传递给 AsyncTask<String, Void, Void>
【发布时间】:2013-06-13 17:44:56
【问题描述】:

我正在构建 android 应用程序,它应该打开条形码扫描仪屏幕并扫描条形码,然后将条形码字符串发送到网络服务。我已经完成了条形码阅读部分,将静态字符串发送到 web 服务。我正在异步向 Web 服务发送字符串。

这是我的代码

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()

【问题讨论】:

    标签: java android android-asynctask


    【解决方案1】:
    soap_object.execute(new String []{"StringOne","StringTwo"});
    

    你也可以这样做:

    soap_object.execute("StringOne","StringTwo");
    

    doInBackground 中,params 是一个varargs 参数,所以只需这样做:

    execute__barcode_webservice(params[0], params[1]);
    

    【讨论】:

      【解决方案2】:

      试试这个..

      AsyncCallWS soap_object = x.new AsyncCallWS();
      
      soap_object.execute(new String []{"String_one","String_two"});
      

      然后在 doInBackground

       execute__barcode_webservice(params[0],params[1]);
      

      【讨论】:

        【解决方案3】:

        你也可以传入一个字符串数组,这样:

        new String[] info = ...
        soap_object.execute(info);
        

        【讨论】:

          【解决方案4】:

          你也可以使用 Parameterobjects,看这个帖子,David Wasser 的回答:How can you pass multiple primitive parameters to AsyncTask?

          【讨论】:

            猜你喜欢
            • 2021-11-19
            • 2013-11-26
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-08-24
            • 1970-01-01
            • 2021-10-22
            相关资源
            最近更新 更多