¿Por qué Android DDMS File Explorer sólo muestra 3 directorios?
¿Por qué Android DDMS File Explorer sólo muestra datos, mnt y directorios del sistema? Hay otros directorios y archivos si ejecuto "adb shell ls -l"
- Android Eliminar archivo con DDMS
- Enorme byte en mi aplicación después de HPROF
- Android Studio y el dispositivo Android monitor
- Desarrollo de Android: ddms desde la línea de comandos sin ver dispositivos
- Mover una carpeta completa de Windows a emulador de Android
- No se puede ver el informe de seguimiento HTML generado por la herramienta Systrace en SDK de Android
- Ddms emulator control disabled
- Android DDMS (Monitor) no se inicia si el perfil de usuario contiene un espacio en él
- Android Studio no puede detectar Samsung S5
- ADB, Wifi y Eclipse: ¿cómo puedo configurar?
- Ver contenido del archivo de base de datos en Android Studio
- No hay lista de dispositivos en Android DDMS
- Explorador de archivos vacío en Eclipse DDMS
Hice un poco de excavación y encontré que la vista del Explorador de archivos de ADT está restringida por una clase llamada
com.android.ddmlib.FileListingService
En su interior, verá una lista de directorios de nivel superior aprobados:
/** Top level data folder. */ public final static String DIRECTORY_DATA = "data"; //$NON-NLS-1$ /** Top level sdcard folder. */ public final static String DIRECTORY_SDCARD = "sdcard"; //$NON-NLS-1$ /** Top level mount folder. */ public final static String DIRECTORY_MNT = "mnt"; //$NON-NLS-1$ /** Top level system folder. */ public final static String DIRECTORY_SYSTEM = "system"; //$NON-NLS-1$ /** Top level temp folder. */ public final static String DIRECTORY_TEMP = "tmp"; //$NON-NLS-1$ /** Application folder. */ public final static String DIRECTORY_APP = "app"; //$NON-NLS-1$ private final static String[] sRootLevelApprovedItems = { DIRECTORY_DATA, DIRECTORY_SDCARD, DIRECTORY_SYSTEM, DIRECTORY_TEMP, DIRECTORY_MNT, };
Más adelante, este listado se consulta y si está en la lista aprobada, lo verá en el Explorador de archivos de Eclipse:
// if the parent is root, we only accept selected items if (mParentEntry.isRoot()) { boolean found = false; for (String approved : sRootLevelApprovedItems) { if (approved.equals(name)) { found = true; break; } } // if it's not in the approved list we skip this entry. if (found == false) { continue; } }
Por lo tanto, si desea explorar todo el contenido del dispositivo, puede cambiar el código para aprobar todos los directorios de nivel superior quitando ese bloque de código completo. Entonces tendrías que recompilar e instalar tu complemento ADT personalizado.
Además, al ejecutar el comando:
adb shell ls -l
Entonces vas a un shell de bajo nivel que es como un terminal en tu dispositivo Android. No hay filtrado a este nivel.
- Cómo reiniciar el teléfono Android desde el código del kernel
- Token de acceso de linkedin para la aplicación android