Da un po 'di tempo uso Rhythmbox su Ubuntu 14.04 per riprodurre musica dal mio iPhone. A volte ricevo la fastidiosa finestra di dialogo "inizializza il tuo iPhone", ma lo annullo, smonto e ricollego il telefono e il problema è risolto.
Sfondo: far funzionare le cose con iOS 10
Di recente, ho aggiornato a iOS 10 e il montaggio dell'iPhone ha smesso di funzionare. In qualche modo ho risolto questo problema clonando libplist , libimobiledevice , libusbmuxd , usbmuxd e ifuse [nota: ifusenon sembra necessario se si utilizza gvfs], controllando il masterramo in ciascun repository e installando tramite
./autogen.sh
make
sudo checkinstall
in modo che le versioni del pacchetto e le dipendenze possano essere gestite tramite dpkg.
Perché l' libimobiledeviceho fatto anche ./autogen.sh --disable-opensslper usare GnuTLS.
Poiché originariamente avevo installato la maggior parte di questi pacchetti tramite apt-get, ho installato libplistcome pacchetto dpkg libplist1, libimobiledeviceas libimobiledevice4e libusbmuxdas libusbmuxd2. Ho anche fatto echo /usr/local/lib > /etc/ld.so.conf.d/libimobiledevice-libs.confe qualche ulteriore collegamento simbolico quando i programmi si sono lamentati che /usr/lib/libimobiledevice.so.4mancavano.
Far funzionare gvfs
ifuseora monterà correttamente l'iPhone, ma il mio vero obiettivo è quello gvfsdi rilevare e montare il telefono in modo che funzioni con Rhythmbox. Potrei aver bisogno di fare un ulteriore collegamento simbolico per far funzionare anche i gvfsprogrammi relativi, dimentico.
Se provo ingenuamente a collegare il mio telefono a questo punto, (con alta probabilità) ricevo il messaggio di errore Message did not receive a reply (timeout by message bus). Devo correre /usr/lib/gvfs-gvfs-afc-volume-monitor3+ volte fino a quando non ho la fortuna di montare il telefono; questo sembra molto sbagliato.
L'esecuzione sudo usbmuxd -f -vmi fa spam con messaggi come
New client on fd 19
Client 19 connection closed
Disconnecting client fd 19
più e più volte, oltre a un'istanza di Receive from client fd 19 failed: Connection reset by peere Connection reset by device 4 (3->62078). Fondamentalmente, non ho idea del perché il montaggio funzioni solo in modo intermittente. Le cose sembrano funzionare più spesso quando corro usbmuxdin primo piano -f, ma potrebbe essere solo un errore di conferma.
Quando finalmente faccio ottenere il telefono per montare, Rhythmbox avvierà e visualizzare la finestra di dialogo "inizializzare il vostro iPhone", con due problemi: (1) si blocca per un lungo periodo durante il caricamento questa finestra di dialogo (cercando di connettersi con il telefono, forse, o forse Rhythmbox è solo ultra lento?) e (2) se premo "Annulla", non riesco più a vedere il telefono montato su Rhythmbox. Prima, dopo aver annullato una volta, ho potuto smontare e ricollegare il mio telefono e la finestra di dialogo non si apriva più, ma questo metodo è molto meno affidabile perché non riesco a montare il mio telefono in modo affidabile! Quindi dopo tutto questo ...
Domande
- Esiste un modo "più corretto" per cui avrei dovuto eseguire le installazioni dal sorgente?
- Come posso
gvfsmontare in modo affidabile il mio telefono al primo tentativo? - Dovrei smettere di usare
gvfs/rhythmboxe iniziare a usareifuse+ qualcos'altro?