Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.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 Android-将(字符串…路径)从asynctask更改为位于服务的函数_Java_Android_Android Asynctask - Fatal编程技术网

Java Android-将(字符串…路径)从asynctask更改为位于服务的函数

Java Android-将(字符串…路径)从asynctask更改为位于服务的函数,java,android,android-asynctask,Java,Android,Android Asynctask,我试图获取asynctask代码并将其转换为将在服务类上运行的函数 asynctask代码是这样开始的- public class HttpUploader extends AsyncTask<String, Void, String> { @Override protected String doInBackground(String... path) { String outPut =

我试图获取asynctask代码并将其转换为将在服务类上运行的函数

asynctask代码是这样开始的-

    public class HttpUploader extends AsyncTask<String, Void, String> {

            @Override
             protected String doInBackground(String... path) {

                 String outPut = null;

                 for (String sdPath : path) {
                     Bitmap bitmapOrg = BitmapFactory.decodeFile(sdPath);
                     ByteArrayOutputStream bao = new ByteArrayOutputStream();
                     //rest of the code
     private String httpUploader (String path){

     String outPut = null;

         for (String sdPath : path) {
         Bitmap bitmapOrg = BitmapFactory.decodeFile(sdPath);
         ByteArrayOutputStream bao = new ByteArrayOutputStream();
在上面的代码中,它向我显示了路径在第行出错-

 for (String sdPath : path) 
当站在上面时,它说“只能迭代java.lang的数组或实例…”

所以我猜问题是因为在asynctask中,backround函数中的do得到-String。。。路径

那么,为了消除这个错误,我可以用什么来改变它呢


感谢您提供的任何帮助

当您使用这样的for循环时,编译器希望使用数组(或您可以迭代的另一种类型),而不仅仅是字符串

更改方法声明,以便改为传递数组

因此:

private String httpUploader (String path){
应该是这个吗

private String httpUploader (String[] paths){

或者你可以通过你的例子传递一个ArrayList

Any我知道我还需要将for行中的路径更改为path,对吧@4不可以。如果传递数组,其余代码应该可以正常工作。如果您只想使用一条路径,那么应该删除`for(String sdPath:path)`作为替代