¿Cómo puedo mostrar una barra de progreso al copiar archivos utilizando Apache FileUtils? Androide

Estoy utilizando la biblioteca Apache commons para copiar archivos de un directorio a otro. El problema que tengo es que no puedo encontrar una forma de actualizar una barra de progreso al copiar el archivo. Mi idea inicial era utilizar una devolución de llamada, pero no hay forma de pasar una devolución de llamada al método copyfile.

FileUtils.copyFileToDirectory(fileSrc, fileDest); 

He resuelto mi problema como a continuación, Que pueda ser útil para usted.

 if (mAdapter != null && mAdapter.getItemCount() > 0) { final ArrayList<StoryModel> selectedList = mAdapter.getSelectedData(); if (selectedList.size() > 0) { final ProgressDialog pd = new ProgressDialog(getActivity()); pd.setMessage("Saving Stories...."); pd.show(); Thread t = new Thread(new Runnable() { @Override public void run() { try { for (StoryModel imageModel : selectedList) { String srcFilePath = imageModel.getUrl(); Log.d(TAG, "onOptionsItemSelected: " + srcFilePath); org.apache.commons.io.FileUtils.copyFileToDirectory(new File(srcFilePath), new File(FileUtils.getAppPath(mContext))); } } catch (IOException ignored) { } Log.d(TAG, "run: Dismissed...."); pd.dismiss(); } }); t.start(); } else { Toast.makeText(mContext, R.string.string_error_select_story_to_download, Toast.LENGTH_LONG).show(); } } else { Toast.makeText(mContext, R.string.string_error_select_story_to_download, Toast.LENGTH_LONG).show(); } 

Gracias 🙂

  • Comunicación con el host USB de Android
  • File.exists () devuelve false cuando el archivo existe
  • Error al crear un directorio en / sdcard
  • Intentando crear un archivo en Android: open failed: EROFS (Sistema de archivos de sólo lectura)
  • Java.io.IOException: write failed: EPIPE (Broken pipe)
  • File.canWrite () dice "true" pero no puedo escribir en almacenamiento extraíble (kit kat)
  • Android ContentProvider y Google IO Rest Talk
  • Teléfono Android como ratón del ordenador
  • Lectura rápida de enteros pequeños endian de archivo
  • Java.io.IOException: No queda espacio en el dispositivo Android
  • Escribir archivos en / system
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.