Co faktycznie dzieje się podczas „Oczekiwania na zastosowanie zmian” i „Oczekiwania na skopiowanie elementów”?

17

Na dziesiątkach różnych forów internetowych znajdują się dosłownie setki wątków na temat urządzeń z systemem iOS, które utknęły w polu „Oczekiwanie na zastosowanie zmian” i / lub „Oczekiwanie na skopiowanie elementów” podczas synchronizacji. Problem miałem sporadycznie przez dwa lata, na iOS 6, 7, a teraz 8, i szczerze mówiąc po wypróbowaniu wszystkich poprawek, o których czytałem, zrezygnowałem z próby rozwiązania tego problemu. Nie o to chodzi w tym pytaniu. Chcę wiedzieć:

Co powinno się wydarzyć podczas tych etapów synchronizacji?

Czy te dwie wiadomości oznaczają to samo, czy coś innego? Co iTunes próbuje zrobić? Czy czyta z wewnętrznej bazy danych na urządzeniu i czy porównuje ją z biblioteką iTunes na komputerze? Czy to pisze do biblioteki urządzeń? Co pisze Na jakim pliku działa? Czy jest jakiś sposób na obserwowanie trwającej aktywności w czasie rzeczywistym lub po fakcie?

słodycze
źródło
Chciałbym również poznać odpowiedź, ponieważ cały czas mam ten problem. Oto niektóre wiadomości z konsoli, które otrzymam na wypadek, gdyby komukolwiek pomogły:11/15/14 11:30:11.314 AM iTunes[48673]: Failed to create replacement string 11/15/14 11:32:43.222 AM iTunes[48673]: AMDeviceSecureTransferPath (thread 0x115c2b000): disableDelta: FALSE 11/15/14 11:32:43.222 AM iTunes[48673]: AMDeviceSecureTransferPath (thread 0x115c2b000): Trying SZConduit for transfer 11/15/14 11:32:43.507 AM iTunes[48673]: nuke_path (thread 0x115c2b000): AFCRemovePath of 'PublicStaging/DoubleDown 3.5.1.ipa' returned 8
BringMyCakeBack
11/15/14 11:40:50.527 AM iTunes[48673]: Entered:_AMMuxedDeviceDisconnected, mux-device:1815 11/15/14 11:40:50.527 AM iTunes[48673]: Entered:__thr_AMMuxedDeviceDisconnected, mux-device:1815 11/15/14 11:40:50.527 AM iTunes[48673]: tid:144f - Mux ID not found in mapping dictionary 11/15/14 11:40:50.527 AM iTunes[48673]: tid:144f - Can't handle disconnect with invalid ecid
BringMyCakeBack
Potencjalnie pomocny artykuł z 29.12.2014 2014 r. Na ten temat: macworld.com/article/2861406/... I tak, doświadczam tych samych objawów od lat. Westchnienie.
Johnny Utahh
@JohnnyUtahh Widziałem ten artykuł - i skomentowałem go ponad dwa miesiące temu (przewiń w dół w komentarzach).
mweiss
Dzięki @mweiss, pomocne. Osobno: proponuję, abyśmy wspólnie opracowali zwięzły, „otwarty” list do Apple (z oczywistym zamiarem naprawienia synchronizacji iTunes + iOS). Następnie każdy z nas próbuje znaleźć znaczącego przedstawiciela Apple, którego znamy - im wyżej na schemacie organizacyjnym Apple, tym lepiej - i osobiście dostarczyć dokładnie tę samą kopię listu. Ewentualnie prześlij również za pośrednictwem systemów Apple.com - „opinii online”. (ciąg dalszy ...)
Johnny Utahh

Odpowiedzi:

5

Chociaż Apple nie ma oficjalnej dokumentacji, nadal możesz uzyskać pewne informacje, oglądając iTunes i iOS wykonujące swoje czynności. Można to zrobić poprzez monitorowanie plików dziennika obu, na iPhonie można to zrobić przez połączenie USB. Oto kilka rzeczy, które widziałem, jak iPhone robi na etapach synchronizacji „czekając na xy”:

  • Po skopiowaniu nowych multimediów na iPhone'a, media muszą zostać zindeksowane, np. Trzeba przetworzyć metadane, utworzyć miniatury itp. Do tego czasu media nie będą poprawnie wyświetlane w odpowiednich aplikacjach na iPhone'a, więc iTunes czeka, aż usługa iPhone Media Indexer zakończy swoją pracę.

  • Podczas kopiowania nowych aplikacji na iPhone'a spakowane .ipapliki muszą rozpakować się i zainstalować, np. Zarejestrować się na ekranie głównym iPhone'a, listach aplikacji, bazach rozszerzeń plików itp., Odbywa się to na tym etapie synchronizacji.

  • Wyszukiwanie w centrum uwagi może wymagać czasu na indeksowanie nowych plików, iTunes też na to czeka (nie zawsze, ale czasami!)

  • Gdy iTunes przesyła pliki do iPhone'a, zawsze weryfikuje zawartość pliku na kilka sposobów, porównując integralność archiwum lub skróty. Procesy te wymagają dużo czasu, w zależności od wielkości przesyłanych danych, a iTunes czeka na pomyślną weryfikację w celu ukończenia synchronizacji.

  • W przypadku wykrycia błędów kopiowania za pomocą dowolnej metody weryfikacji, iTunes ponownie skopiuje pliki. Często procesy te nie są wyświetlane przez iTunes, odbywa się to podczas przetwarzania „Oczekiwania na elementy do skopiowania”.

  • iTunes będzie również czekał na pomyślne zakończenie procesów kopiowania, istnieją strumienie i gniazda do zamknięcia, gdy dane są przesyłane między komputerami. Chociaż powinno to nastąpić natychmiast, czasem zdarzają się awarie i iPhone potrzebuje trochę czasu.

  • Ogólnie można powiedzieć, że iTunes wykorzystuje te etapy do weryfikacji i korekty błędów, a także do wykonywania „kompletnych” prac. Stają się niezwykle przydatne, zwłaszcza podczas korzystania z synchronizacji Wi-Fi, która jest znacznie bardziej podatna na błędy niż USB.

Edycja : Aby wyświetlić pliki dziennika na iPhonie / iPadzie, jailbreak nie jest wymagany. Prawdopodobnie najlepszym narzędziem jest libimobiledevicepakiet darmowego oprogramowania open source licencjonowanego na licencji LGPL 2.1 . Jest w stanie obsłużyć urządzenie iOS bez potrzeby iTunes, więc nawet na komputerach z systemem Linux. Mimo że jest przeznaczony dla komputerów z systemem Linux, może być również uruchamiany na komputerach Mac, np. Poprzez kompilację kodu źródłowego lub, co łatwiejsze, instalując go przez homebrew . Chociaż zawsze używam go na komputerach z systemem Linux, powinno to działać tak samo w systemie Mac OS X.

Prawdopodobnie najpierw musisz sparować iPhone'a, w idevicepairtym celu użyj opcji -binary. Powinien sam znaleźć iPhone'a podłączonego przez USB, jeśli nie, możesz spróbować przekazać UUID swojego urządzenia. Po pomyślnym sparowaniu (wyświetli komunikat o powodzeniu do interfejsu terminala), użyj idevicesyslog-application, aby wyświetlić pliki dziennika na iPhonie. Połączy się automatycznie z sysloggniazdem urządzenia, jeśli nie, możesz ponownie przekazać UUID. Następnie wszystkie komunikaty dziennika zostaną wysłane stdoutna komputer, np. Na wyjście terminala.

Istnieje również autorskie oprogramowanie, które pozwala czytać dzienniki na urządzeniu z systemem iOS, ale libimobiledevicejako narzędzie wiersza polecenia i narzędzia open source powinno być preferowane.

LukeLR
źródło
Czy możesz podać więcej szczegółów na temat monitorowania plików dziennika?
mweiss,
@mweiss Zaktualizowałem swój post, aby zawierał informacje na ten temat;)
LukeLR
-1

Myślę, że w procesie „Oczekiwanie na skopiowanie elementu” iTunes skanuje elementy, które mają zostać skopiowane, zlicza elementy i oblicza szacowany czas kopiowania. Aż do skopiowania plików, czas oczekiwania wydłuża się.

Harshil
źródło
Miałem wrażenie, że to, co opisujesz, dzieje się podczas procesu „Przygotowywania do kopiowania elementów”. Czy masz jakieś dowody na to, że dzieje się to podczas „Oczekiwania na skopiowanie elementów”?
mweiss