Rozwiązywanie problemów z błędami instalacji biblioteki
W niektórych przypadkach podczas instalowania bibliotek obsługi systemu Android mogą wystąpić błędy. Ten przewodnik zawiera obejścia niektórych typowych błędów.
Omówienie
Podczas kompilowania projektu aplikacji platformy Xamarin.Android mogą wystąpić błędy kompilacji, gdy program Visual Studio lub Visual Studio dla komputerów Mac spróbuje pobrać i zainstalować biblioteki zależności. Wiele z tych błędów jest spowodowanych problemami z łącznością sieciową, uszkodzeniem plików lub problemami z wersją. W tym przewodniku opisano najczęstsze błędy instalacji biblioteki pomocy technicznej i przedstawiono kroki umożliwiające obejście tych problemów i ponowne utworzenie projektu aplikacji.
Błędy podczas pobierania repozytorium m2
Błędy m2repository mogą wystąpić podczas odwoływania się do pakietu NuGet bibliotek pomocy technicznej systemu Android lub usług Google Play. Komunikat o błędzie jest podobny do następującego:
Download failed. Please download https://dl-ssl.google.com/android/repository/android_m2repository_r16.zip and extract it to the C:\Users\mgm\AppData\Local\Xamarin\Android.Support.v4\22.2.1\content directory.
Ten przykład dotyczy android_m2repository_r16, ale może zostać wyświetlony ten sam komunikat o błędzie dla innej wersji, takiej jak android_m2repository_r18 lub android_m2repository_r25.
Automatyczne odzyskiwanie z błędów m2repository
Często ten problem można rozwiązać przez usunięcie problematycznej biblioteki i ponowne kompilowanie zgodnie z następującymi krokami:
Przejdź do katalogu biblioteki pomocy technicznej na komputerze:
W systemie Windows biblioteki pomocy technicznej znajdują się w folderze C:\Users\username\AppData\Local\Xamarin.
W systemie Mac OS X biblioteki pomocy technicznej znajdują się w lokalizacji /Users/username/.local/share/Xamarin.
Znajdź bibliotekę i folder wersji odpowiadający komunikatowi o błędzie. Na przykład biblioteka i folder wersji powyższego komunikatu o błędzie znajdują się w lokalizacji Android.Support.v4\22.2.1:
Usuń zawartość folderu wersji. Pamiętaj, aby usunąć plik .zip , a także zawartość i osadzone podkatalogi w tym folderze. W przykładowym komunikacie o błędzie pokazanym powyżej pliki i podkatalogi wyświetlane na tym zrzucie ekranu (zawartość, osadzona i android_m2repository_r16.zip) mają zostać usunięte:
Należy pamiętać, że ważne jest usunięcie całej zawartości tego folderu. Mimo że ten folder może początkowo zawierać "brakujące" android_m2repository_r16.zip pliku, ten plik mógł zostać częściowo pobrany lub uszkodzony.
Skompiluj projekt — spowoduje to ponowne pobranie brakującej biblioteki przez proces kompilacji.
W większości przypadków te kroki spowodują rozwiązanie błędu kompilacji i umożliwią kontynuowanie. Jeśli usunięcie tej biblioteki nie rozwiąże błędu kompilacji, należy ręcznie pobrać i zainstalować plik android_m2repository_r_nn_.zip zgodnie z opisem w następnej sekcji.
Ręczne pobieranie repozytorium m2
Jeśli podjęto próbę wykonania powyższych kroków automatycznego odzyskiwania i nadal występują błędy kompilacji, możesz ręcznie pobrać plik android_m2repository_r_nn_.zip (przy użyciu przeglądarki internetowej) i zainstalować go zgodnie z poniższymi krokami. Ta procedura jest również przydatna, jeśli nie masz dostępu do Internetu na komputerze dewelopera, ale możesz pobrać archiwum przy użyciu innego komputera.
Pobierz plik android_m2repository_r_nn_.zip odpowiadający komunikatowi o błędzie — linki znajdują się na poniższej liście (wraz z odpowiednim skrótem MD5 adresu URL każdego linku):
android_m2repository_r33.zip – 5FB756A25962361D17BBE99C3B3FCC44
android_m2repository_r32.zip — F16A3455987DBAE5783F058F19F7FCDF
android_m2repository_r31.zip – 99A8907CE2324316E754A95E4C2D786E
android_m2repository_r30.zip – 05AD180B8BDC7C21D6BCB94DDE7F2C8F
android_m2repository_r29.zip – 2A3A8A6D6826EF6CC653030E7D695C41
android_m2repository_r28.zip – 17BE247580748F1EDB72E9F374AA0223
android_m2repository_r27.zip — C9FD4FCD69D7D12B1D9DF076B7BE4E1C
android_m2repository_r26.zip – 8157FC1C311BB36420C1D8992AF54A4D
android_m2repository_r25.zip – 0B3F1796C97C707339FB13AE8507AF50
android_m2repository_r24.zip – 8E3C9EC713781EDFE1EFBC5974136BEA
android_m2repository_r23.zip — D5BB66B3640FD9B9C6362C9DB5AB0FE7
android_m2repository_r22.zip – 96659D653BDE0FAEDB818170891F2BB0
android_m2repository_r21.zip — CD3223F2EFE068A26682B9E9C4B6FBB5
android_m2repository_r20.zip — 650E58DF02DB1A832386FA4A2DE46B1A
android_m2repository_r19.zip – 263B062D6EFAA8AE39E9460B8A5851A
android_m2repository_r18.zip – 25947AD38DCB4865ABEB61522FAFDA0E
android_m2repository_r17.zip – 49054774F44AE5F35A6BA9D3C117EFD8
android_m2repository_r16.zip – 0595E577D19D31708195A83087881EE6
Jeśli archiwum m2repository nie jest wyświetlane w tej tabeli, możesz utworzyć adres URL pobierania, poprzedzając
https://dl-ssl.google.com/android/repository/
nazwę repozytorium m2 do pobrania. Na przykład użyj poleceniahttps://dl-ssl.google.com/android/repository/android\_m2repository\_r_nn_.zip
, aby pobrać android_m2repository_r_nn_.zip.Zmień nazwę pliku na odpowiedni skrót MD5 adresu URL pobierania, jak pokazano w powyższej tabeli. Jeśli na przykład pobrano android_m2repository_r25.zip, zmień jego nazwę na 0B3F1796C97C707339FB13AE8507AF50.zip. Jeśli skrót MD5 dla adresu URL pobierania pobranego pliku nie jest wyświetlany w tabeli, możesz użyć generatora MD5 online, aby przekonwertować adres URL na ciąg skrótu MD5.
Skopiuj plik do folderu zips platformy Xamarin:
W systemie Windows ten folder znajduje się w folderze C:\Users\username\AppData\Local\Xamarin\zips.
W systemie Mac OS X ten folder znajduje się w folderze /Users/username/.local/share/Xamarin/zips.
Na przykład poniższy zrzut ekranu ilustruje wynik po pobraniu android_m2repository_r16.zip i zmianie nazwy na skrót MD5 adresu URL pobierania w systemie Windows:
Jeśli ta procedura nie rozwiąże błędu kompilacji, musisz ręcznie pobrać plik android_m2repository_r_nn_.zip , rozpakuj go i zainstaluj jego zawartość zgodnie z opisem w następnej sekcji.
Ręczne pobieranie i instalowanie plików m2repository
W pełni ręczny proces odzyskiwania po błędach m2repository wiąże się z pobraniem pliku android_m2repository_r_nn_.zip (przy użyciu przeglądarki internetowej), rozpakowaniem go i skopiowaniem jej zawartości do katalogu biblioteki pomocy technicznej na komputerze. W poniższym przykładzie odzyskamy dane z tego komunikatu o błędzie:
Unzipping failed. Please download https://dl-ssl.google.com/android/repository/android_m2repository_r25.zip and extract it to the C:\Users\mgm\AppData\Local\Xamarin\Android.Support.v4\23.1.1\content directory.
Aby pobrać repozytorium m2 i zainstalować jego zawartość, wykonaj następujące czynności:
Usuń zawartość folderu biblioteki odpowiadającego komunikatowi o błędzie. Na przykład w powyższym komunikacie o błędzie należy usunąć zawartość C:\Users\username\AppData\Local\Xamarin\Android.Support.v4\23.1.1.0. Zgodnie z wcześniejszym opisem należy usunąć całą zawartość tego katalogu:
Pobierz plik android_m2repository_r_nn_.zip z firmy Google, który odpowiada komunikatowi o błędzie (zobacz tabelę w poprzedniej sekcji, aby uzyskać linki).
Wyodrębnij to .zip archiwum do dowolnej lokalizacji (np. pulpitu). Powinno to spowodować utworzenie katalogu odpowiadającego nazwie archiwum .zip . W tym katalogu powinien znajdować się podkatalog o nazwie m2repository:
W katalogu biblioteki w wersji przeczyszczonym w kroku 1 ponownie utwórz zawartość i osadzone podkatalogi. Na przykład poniższy zrzut ekranu przedstawia zawartość i osadzone podkatalogi tworzone w folderze 23.1.1.0 dla android_m2repository_r25.zip:
Skopiuj repozytorium m2 z wyodrębnionego .zip do katalogu zawartości utworzonego w poprzednim kroku:
W wyodrębnionym katalogu .zip przejdź do katalogu m2repository\com\android\support\support-v4 i otwórz folder odpowiadający numerowi wersji utworzonemu powyżej (w tym przykładzie 23.1.1):
Skopiuj wszystkie pliki w tym folderze do katalogu osadzonego utworzonego w kroku 4:
Sprawdź, czy wszystkie pliki są kopiowane. Katalog osadzony powinien teraz zawierać pliki, takie jak .jar, .aar i .pom.
Rozpakuj zawartość wszystkich wyodrębnionych plików aar do katalogu osadzonego. W systemie Windows dołącz rozszerzenie .zip do pliku .aar, otwórz go i skopiuj zawartość do katalogu osadzonego. W systemie macOS rozpakuj plik aar przy użyciu polecenia rozpakuj w terminalu (na przykład rozpakuj plik.aar).
W tym momencie ręcznie zainstalowano brakujące składniki, a projekt powinien być kompilowany bez błędów. Jeśli nie, sprawdź, czy pobrano wersję archiwum m2 .zip , która odpowiada dokładnie wersji w komunikacie o błędzie, i sprawdź, czy zainstalowano jej zawartość w odpowiednich lokalizacjach zgodnie z opisem w powyższych krokach.
Podsumowanie
W tym artykule wyjaśniono, jak odzyskać dane po typowych błędach, które mogą mieć miejsce podczas automatycznego pobierania i instalowania bibliotek zależności. Opisano w nim sposób usuwania problematycznej biblioteki i ponownego kompilowania projektu w celu ponownego pobrania i ponownego zainstalowania biblioteki. Opisano w nim sposób pobierania biblioteki i instalowania jej w folderze zips . Opisano również bardziej zaangażowaną procedurę ręcznego pobierania i instalowania niezbędnych plików w celu obejścia problemów, których nie można rozwiązać za pomocą środków automatycznych.