0 votos

MTP cambia con la actualización de Android 12 en el Pixel 5?

Tengo un Google Pixel 5 que recientemente se ha actualizado a Android 12.

Desde entonces, no ha podido conectarse a mi escritorio Debian 11 Linux para transferir archivos de la forma habitual.

La "forma habitual" es, tengo activada la depuración USB, conecto el dispositivo al ordenador por USB, selecciono "Usar USB para" -> "Transferencia de archivos" en el diálogo de Preferencias USB que está disponible desde las notificaciones. Luego en el escritorio de linux, hago jmtpfs y transferir archivos. (Esta es una operación de línea de comandos).

Esto ya no funciona. El jmtpfs informes de invocación:

$ jmptfs /mnt/android
Device 0 (VID=18d1 and PID=4ee2) is a Google Inc Nexus/Pixel (MTP+ADB).
error returned by libusb_claim_interface() = -6LIBMTP PANIC: Unable to initialize device
terminate called after throwing an instance of 'MtpErrorCantOpenDevice'
  what():  Can't open device
Aborted

Si cambio la selección de "Transferencia de archivos / Android Auto" en los prefijos de USB, sólo obtengo No mtp devices found .

También tengo un mtp-detect que informa del mismo error:

$ mtp-detect
libmtp version: 1.1.17

Listing raw device(s)
Device 0 (VID=18d1 and PID=4ee2) is a Google Inc Nexus/Pixel (MTP+ADB).
   Found 1 device(s):
   Google Inc: Nexus/Pixel (MTP+ADB) (18d1:4ee2) @ bus 2, dev 92
Attempting to connect device(s)
error returned by libusb_claim_interface() = -6LIBMTP PANIC: Unable to initialize device
Unable to open raw device 0

I puede utilizar el adb herramienta. adb devices informa del ID del dispositivo y del "dispositivo", y adb pull /path/to/file destination funciona, por lo que sigue siendo posible para hacer las operaciones de archivo que quiero hacer, pero estoy desconcertado por el cambio de comportamiento.

Esta actividad es algo irregular, así que no puedo probar fue la actualización de Android 12 la que lo causó, también ha habido actualizaciones rutinarias de paquetes en el escritorio, pero la actualización de Android parece el sospechoso lógico, dado que las actualizaciones de paquetes de Debian raramente causan roturas.

El hecho de que adb funcione sugiere que los fundamentos (hardware, cables, detección de dispositivos, controladores de Linux) probablemente estén bien.

¿Tal vez algún tipo de capa extra de permisos MTP en Android 12? ¿Un cambio en el protocolo MTP que se ha adelantado a las herramientas de línea de comandos de Linux?

Se agradece cualquier ayuda.

La versión de Android es #SP2A.220505.002.

jmtpfs es la versión empaquetada de Debian-11, e informa:

$ jmtpfs --version
jmtpfs version: 0.5
FUSE library version: 2.9.9
fusermount3 version: 3.10.3
using FUSE kernel interface version 7.19

mtp-detect es de la versión de Debian-11 mtp-tools versión 1.1.17-3.

1voto

Izzy Puntos 45544

Aunque esto no explica por qué jmtpfs está teniendo problemas o cómo solucionarlos, vamos a suponer por un momento que es un <a href="https://meta.stackoverflow.com/q/66377/192154">Problema XY </a>y abordar el real: ¿Cómo puedes montar correctamente tu teléfono para que sea accesible en el sistema de archivos de Linux?

Como usted afirma que adb pull y adb push funcionan bien, la primera opción que se me ocurre es utilizar adbfs - que es lo que hago con éxito desde hace unos 10 años y estoy bastante contento. adbfs se asienta sobre ADB y utiliza ADB pull/push para la transferencia de archivos, además de otros comandos de ADB (por ejemplo adb shell ls ) para otros antecedentes. Funciona de forma fiable y estable, es transparente para todo el sistema (por lo que se puede acceder al dispositivo desde la línea de comandos así como desde las aplicaciones GUI), además las transferencias son mucho más rápidas que a través de MTP.

Para la configuración, etc., consulte mis respuestas aquí , aquí y aquí . Una configuración avanzada para múltiples dispositivos conectados al mismo tiempo más la integración con Midnight Commander que puedes encontrar en mi respuesta aquí .

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X