En muchos dispositivos Android, cuando el dispositivo está conectado al puerto USB de una computadora o incluso a algunos dispositivos de carga USB, el teléfono entra en modo de almacenamiento USB. Cuando el dispositivo está en este modo, las aplicaciones de Android no pueden acceder a la tarjeta SD. ¿Hay alguna forma (1) de detectar cuándo el dispositivo está en este modo y (2) desactivar programáticamente el almacenamiento USB, al menos temporalmente, para que mi aplicación Android pueda acceder a la tarjeta SD?Desactivar programáticamente el almacenamiento USB en dispositivos Android
He visto otras preguntas de SO y las respuestas no son realmente suficientes (por ejemplo, Android: Detecting USB).
+1 para la buena pregunta –
Esto puede funcionar si el teléfono está rooteado y el sistema operativo actual tiene el permiso de acceso API requerido – Prateek
Como dijo Nikolay a continuación, a menos que solo -Honeycomb dispositivos, no vale la pena el esfuerzo para hacer una función de alternar UMS. MTP, aunque a muchos no les guste (incluido yo mismo), tiene sus puntos buenos. Por ejemplo, con MTP puede eliminar simultáneamente archivos de su teléfono a través de su computadora o desde su dispositivo y ver los cambios reflejados inmediatamente en su computadora y dispositivo. Con UMS, debe montar/desmontar cada vez que necesite cambiar el uso entre su dispositivo y su computadora. Entonces MTP te ofrece más flexibilidad. – ChuongPham