Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过web服务器访问理解异步任务_Java_Arrays_Eclipse_Android Asynctask_Webserver - Fatal编程技术网

Java 通过web服务器访问理解异步任务

Java 通过web服务器访问理解异步任务,java,arrays,eclipse,android-asynctask,webserver,Java,Arrays,Eclipse,Android Asynctask,Webserver,新程序员。底部的问题 我有一系列与车辆相对应的车队。我希望使用我的震源组阵列中的每个插槽连续调用服务器 我希望通过一个异步任务来实现这一点 private class refreshTruckInformation extends AsyncTask<URL, Void, Void> { @Override protected void doInBackground(URL... urls) { } @O

新程序员。底部的问题

我有一系列与车辆相对应的车队。我希望使用我的震源组阵列中的每个插槽连续调用服务器

我希望通过一个异步任务来实现这一点

private class refreshTruckInformation extends AsyncTask<URL, Void, Void> {


            @Override
        protected void doInBackground(URL... urls) {

        }

        @Override
        protected void onProgressUpdate(Integer... progress) {

        }

        @Override
        protected void onPostExecute(Void... voids) {

        }
    }
私有类refreshTruckInformation扩展异步任务{
@凌驾
受保护的void doInBackground(URL…URL){
}
@凌驾
受保护的void onProgressUpdate(整数…进度){
}
@凌驾
PostExecute上受保护的void(void…voids){
}
}
**我如何通过我的舰队阵列,以便在我的后勤基地使用它们

我还想有一个进度条,它是基于它所经历的车队的百分比。做这件事的好方法是什么**

谢谢

**我如何通过我的舰队阵列,以便在我的后勤基地使用它们

记住,信息仍然是一个类。因此,您可以使用任何构造函数或settier方法来传递数组

我还希望有一个基于百分比的进度条 它经过了多少舰队。做这件事的好方法是什么**

通过doInBackground方法,您可以使用
publishProgress
方法发布进度。此进度参数将在
onProgressUpdate
方法中捕获

例如

private class RefreshTruckInformation extends AsyncTask<URL, Void, Void> {

        private int[] b;
        public RefreshTruckInformation (int[] a){
             // use array
             b = a;
        }

        public void setArray(int[] a){
             // use array
             b = a;
        }

            @Override
        protected void doInBackground(URL... urls) {

        }

        @Override
        protected void onProgressUpdate(Integer... progress) {

        }

        @Override
        protected void onPostExecute(Void... voids) {

        }
    }
或者调用类似的方法

r.setArray(yourArray);
然后像这样执行

r.execute();

出于某种原因,这种奇怪的设置让我很反感。我知道(我想我知道)你不会在任何地方调用这些方法。那么,我如何“给”doInBackground我的数组呢?这与我何时在主线程中调用execute有关吗?@Benzabll我已经给出了一个例子。。看看能不能帮上忙谢谢!这是我没有得到的精神差距。还有一件事。现在我有了这个数组,b。如何处理doInBackground和onProgressUpdate中的url和进度参数?您可以像以前一样在execute中发送url。。并使用publishProgress发送进度。请看这里的例子。。。。
r.execute();