Che cosa succede effettivamente durante "In attesa di modifiche da applicare" e "In attesa di elementi da copiare"?

17

Ci sono letteralmente centinaia di thread su dozzine di diversi forum su dispositivi iOS bloccati su "In attesa di modifiche da applicare" e / o "In attesa di elementi da copiare" durante la sincronizzazione. Ho avuto questo problema in modo intermittente per due anni, su iOS 6, 7 e ora 8, e francamente dopo aver provato tutte le correzioni di cui ho letto, ho rinunciato a provare a risolverlo. Non è questa la domanda. Quello che voglio sapere è:

What's supposed to happen during those stages of the sync?

Questi due messaggi significano la stessa cosa, o qualcosa di diverso? Che cosa sta facendo iTunes di iTunes? Sta leggendo da un database interno sul dispositivo e confrontandolo con la libreria di iTunes sul computer? È scrivere in una libreria di dispositivi? Cosa sta scrivendo? Su quale file sta lavorando? C'è un modo per guardare l'attività in corso, sia in tempo reale che dopo il fatto?

    
posta mweiss 23.10.2014 - 22:40
fonte

2 risposte

5

Anche se non esiste una documentazione ufficiale di Apple, puoi comunque ottenere alcune informazioni guardando iTunes e iOS che fanno le loro cose. Questo può essere fatto monitorando i file di registro di entrambi, su iPhone questo può essere fatto tramite una connessione USB. Ecco un paio di ciò che ho già visto fare l'iPhone nelle fasi di sincronizzazione "waiting for xy":

  • Dopo aver copiato i nuovi media su iPhone, il supporto deve essere indicizzato, ad es. i metadati devono essere elaborati, le miniature devono essere create ecc. Finché ciò non viene fatto, i media non possono essere visualizzati correttamente nelle app iPhone corrispondenti, quindi iTunes attende che il servizio iPhone Media Indexer completi il suo lavoro.

  • Quando si copiano nuove app su un iPhone, i pacchetti pack .ipa devono decomprimere e installare, ad es. registrati nella homescreen dell'iPhone, negli elenchi di app, nei database di estensione dei file ecc., questo viene fatto durante le fasi di sincronizzazione.

  • La ricerca spotlight potrebbe richiedere del tempo per indicizzare nuovi file, iTunes lo aspetta anche (non sempre, ma a volte!)

  • Quando iTunes trasferisce i file su un iPhone, verifica sempre il contenuto del file in vari modi, essendo l'integrità dell'archivio o gli hash che vengono confrontati. Questi processi richiedono molto tempo, a seconda delle dimensioni dei dati trasferiti, e iTunes attende una verifica corretta per completare la sincronizzazione.

  • Quando vengono rilevati errori di copia con uno dei metodi di verifica, iTunes copia di nuovo i file. Spesso questi processi non vengono visualizzati da iTunes, è fatto durante il processo di "In attesa di elementi da copiare".

  • iTunes attenderà anche il termine dei processi di copia, ci sono flussi e socket da chiudere quando i dati vengono trasferiti da un computer all'altro. Anche se questo dovrebbe accadere all'istante, a volte ci sono dei fallimenti e l'iPhone ha bisogno di tempo.

  • In generale, puoi dire che iTunes utilizza queste fasi per la verifica e la correzione degli errori oltre a svolgere il lavoro "completivo". Sono estremamente utili soprattutto quando si utilizza la sincronizzazione WiFi, che è molto più soggetta a errori rispetto a USB.

Modifica : per visualizzare i file di registro di un iPhone / iPad, non è richiesto alcun jailbreak. Lo strumento migliore probabilmente è libimobiledevice , un pacchetto di software open source gratuito concesso in licenza LGPL 2.1 . È in grado di gestire un dispositivo iOS senza bisogno di iTunes, quindi anche su macchine Linux. Sebbene sia stato progettato per macchine Linux, può essere eseguito anche su Mac, ad es. compilando il codice sorgente , o, ancora più semplice, installando attraverso homebrew . Anche se lo utilizzo sempre su macchine Linux, questo dovrebbe funzionare allo stesso modo su Mac OS X.

Probabilmente devi prima accoppiare il tuo iPhone, usa idevicepair -binary per questo. Dovrebbe trovare l'iPhone collegato a USB da solo, altrimenti, puoi provare a passare l'UUID del tuo dispositivo. Dopo l'abbinamento riuscito (verrà visualizzato un messaggio di successo sull'interfaccia del terminale), utilizzare il idevicesyslog -application per visualizzare i file di registro del tuo iPhone. Si collegherà automaticamente al syslog -socket del tuo dispositivo, in caso contrario, potresti passare di nuovo l'UUID. Quindi tutti i messaggi di log verranno pubblicati su stdout sul tuo computer, ad es. alla tua uscita terminale.

Esiste anche un software proprietario che consente di leggere i registri sul dispositivo iOS, ma libimobiledevice come riga di comando e lo strumento open source deve essere preferito.

    
risposta data 20.03.2016 - 13:54
fonte
-1

Penso che nella procedura "In attesa dell'elemento da copiare" iTunes analizzi gli elementi da copiare, conta gli elementi e calcola il tempo stimato della copia. Il numero di file da copiare è aumentato, il tempo di attesa è aumentato.

    
risposta data 27.01.2016 - 07:23
fonte

Leggi altre domande sui tag