Aracılığıyla paylaş


Kitaplık Yükleme Hatalarını Çözümleme

Bazı durumlarda, Android destek kitaplıklarını yüklerken hata alabilirsiniz. Bu kılavuz bazı yaygın hatalar için geçici çözümler sağlar.

Genel bakış

Xamarin.Android uygulama projesi oluştururken Visual Studio veya Mac için Visual Studio bağımlılık kitaplıklarını indirmeye ve yüklemeye çalıştığında derleme hataları alabilirsiniz. Bu hataların çoğu ağ bağlantısı sorunlarından, dosya bozulmasından veya sürüm oluşturma sorunlarından kaynaklanıyor. Bu kılavuzda en yaygın destek kitaplığı yükleme hataları açıklanır ve bu sorunlara geçici bir çözüm bulmak ve uygulama projenizi yeniden derlemek için adımlar sağlanır.

m2Repository İndirilirken Oluşan Hatalar

Android Destek Kitaplıkları veya Google Play hizmetlerinin NuGet paketine başvururken m2repository hataları görebilirsiniz. Hata iletisi aşağıdakine benzer:

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.

Bu örnek android_m2repository_r16 içindir, ancak android_m2repository_r18 veya android_m2repository_r25 gibi farklı bir sürüm için aynı hata iletisini görebilirsiniz.

m2repository Hatalarından Otomatik Kurtarma

Bu sorun genellikle sorunlu kitaplığı silip şu adımlara göre yeniden oluşturularak düzeltilebilir:

  1. Bilgisayarınızda destek kitaplığı dizinine gidin:

    • Windows'da destek kitaplıkları C:\Users\username\AppData\Local\Xamarin konumunda bulunur.

    • Mac OS X'te destek kitaplıkları /Users/username/.local/share/Xamarin konumunda bulunur.

  2. Hata iletisine karşılık gelen kitaplık ve sürüm klasörünü bulun. Örneğin, yukarıdaki hata iletisi için kitaplık ve sürüm klasörü Android.Support.v4\22.2.1 konumundadır:

    22.2.1 destek kitaplığı için örnek klasör konumu

  3. Sürüm klasörünün içeriğini silin. .zip dosyasının yanı sıra bu klasördeki içeriği ve eklenmiş alt dizinleri kaldırdığınızdan emin olun. Yukarıda gösterilen örnek hata iletisi için, bu ekran görüntüsünde gösterilen dosyalar ve alt dizinler (içerik, eklenmiş ve android_m2repository_r16.zip) silinecek:

    22.2.1 destek kitaplığı klasörünün örnek içeriği

    Bu klasörün içeriğinin tamamını silmenin önemli olduğunu unutmayın. Bu klasör başlangıçta "eksik" android_m2repository_r16.zip dosyasını içerse de, bu dosya kısmen indirilmiş veya bozulmuş olabilir.

  4. Projeyi yeniden derleyin; bunu yapmak, derleme işleminin eksik kitaplığı yeniden indirmesine neden olur.

Çoğu durumda, bu adımlar derleme hatasını çözer ve devam etmenizi sağlar. Bu kitaplığın silinmesi derleme hatasını çözmezse, sonraki bölümde açıklandığı gibi android_m2repository_r_nn_.zip dosyasını el ile indirip yüklemeniz gerekir.

m2repository El ile İndiriliyor

Yukarıdaki otomatik kurtarma adımlarını kullanmayı denediyseniz ve hala derleme hataları yaşıyorsanız, android_m2repository_r_nn_.zip dosyasını el ile indirebilir (web tarayıcısı kullanarak) ve aşağıdaki adımlara göre yükleyebilirsiniz. Bu yordam, geliştirme bilgisayarınızda İnternet erişiminiz yoksa ancak arşivi farklı bir bilgisayar kullanarak indirebiliyorsanız da kullanışlıdır.

  1. Hata iletisine karşılık gelen android_m2repository_r_nn_.zip dosyasını indirin; bağlantılar aşağıdaki listede sağlanır (her bağlantının URL'sinin ilgili MD5 karması ile birlikte):

    • 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 – 263B062D6EFAA8AEE39E9460B8A5851A

    • android_m2repository_r18.zip – 25947AD38DCB4865ABEB61522FAFDA0E

    • android_m2repository_r17.zip – 49054774F44AE5F35A6BA9D3C117EFD8

    • android_m2repository_r16.zip – 0595E577D19D31708195A83087881EE6

    m2repository arşivi bu tabloda gösterilmiyorsa, indirilmesi gereken m2repository'nin adına önceden bağlanarak https://dl-ssl.google.com/android/repository/ indirme URL'sini oluşturabilirsiniz. Örneğin, android_m2repository_r_nn_.zip indirmek için kullanınhttps://dl-ssl.google.com/android/repository/android\_m2repository\_r_nn_.zip.

  2. Yukarıdaki tabloda gösterildiği gibi dosyayı indirme URL'sinin ilgili MD5 karması olarak yeniden adlandırın. Örneğin, android_m2repository_r25.zip indirdiyseniz 0B3F1796C97C707339FB13AE8507AF50.zip olarak yeniden adlandırın. İndirilen dosyanın indirme URL'si için MD5 karması tabloda gösterilmiyorsa, URL'yi bir MD5 karma dizesine dönüştürmek için çevrimiçi bir MD5 oluşturucu kullanabilirsiniz.

  3. Dosyayı Xamarin zips klasörüne kopyalayın:

    • Windows'da, bu klasör C:\Users\username\AppData\Local\Xamarin\zips konumunda bulunur.

    • Mac OS X'te, bu klasör /Users/username/.local/share/Xamarin/zips konumunda bulunur.

    Örneğin, aşağıdaki ekran görüntüsünde android_m2repository_r16.zip indirildiğinde ve Windows'taki indirme URL'sinin MD5 karması olarak yeniden adlandırıldığında elde edilen sonuç gösterilmektedir:

    0595E577D19D31708195A83087881EE6.zip olarak yeniden adlandırılan r16.zip deposu örneği

Bu yordam derleme hatasını çözmezse, sonraki bölümde açıklandığı gibi android_m2repository_r_nn_.zip dosyasını el ile indirmeniz, sıkıştırmasını açmanız ve içeriğini yüklemeniz gerekir.

m2repository Dosyalarını El ile İndirme ve Yükleme

m2repository hatalarından tamamen el ile kurtarma işlemi, android_m2repository_r_nn_.zip dosyasını indirmeyi (web tarayıcısı kullanarak), sıkıştırmasını kaldırmayı ve içeriğini bilgisayarınızdaki destek kitaplığı dizinine kopyalamayı gerektirir. Aşağıdaki örnekte, bu hata iletisinden kurtaracağız:

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.

m2repository dosyasını indirmek ve içeriğini yüklemek için aşağıdaki adımları kullanın:

  1. Hata iletisine karşılık gelen kitaplık klasörünün içeriğini silin. Örneğin, yukarıdaki hata iletisinde C:\Users\username\AppData\Local\Xamarin\Android.Support.v4\23.1.1.0 içeriğini silebilirsiniz. Daha önce açıklandığı gibi, bu dizinin içeriğinin tamamını silmeniz gerekir:

    23.1.1.0 klasöründen içerik, eklenmiş ve android_m2repository klasörleri silme

  2. Google'dan hata iletisine karşılık gelen android_m2repository_r_nn_.zip dosyasını indirin (bağlantılar için önceki bölümdeki tabloya bakın).

  3. Bu .zip arşivini herhangi bir konuma (Masaüstü gibi) ayıklayın. Bu, .zip arşivinin adına karşılık gelen bir dizin oluşturmalıdır. Bu dizinde m2repository adlı bir alt dizin bulmanız gerekir:

    Ayıklanan zip arşivinde bulunan m2repository klasörü

  4. 1. adımda temizlediğiniz sürümlü kitaplık dizininde içeriği ve eklenmiş alt dizinleri yeniden oluşturun. Örneğin, aşağıdaki ekran görüntüsünde, android_m2repository_r25.zip için 23.1.1.0 klasöründe oluşturulan içerik ve eklenmiş alt dizinler gösterilmektedir:

    23.1.1.0 klasöründe içerik ve eklenmiş klasörler oluşturma

  5. Ayıklanan .zip m2repository'yi önceki adımda oluşturduğunuz içerik dizinine kopyalayın:

    23.1.1.0/content klasörüne kopyalanan m2repository ekran görüntüsü

  6. Ayıklanan .zip dizininde m2repository\com\android\support\support-v4 adresine gidin ve yukarıda oluşturulan sürüm numarasına karşılık gelen klasörü açın (bu örnekte, 23.1.1):

    support-v4/23.1.1 klasöründe bulunan dosyaların örnek listesi

  7. Bu klasördeki tüm dosyaları 4. adımda oluşturulan eklenmiş dizine kopyalayın:

    23.1.1.0/embedded klasörüne kopyalanan dosya örneği

  8. Tüm dosyaların üzerine kopyalandığını doğrulayın. Katıştırılmış dizin artık .jar, .aar ve .pom gibi dosyaları içermelidir.

  9. Ayıklanan .aar dosyalarının içeriğini eklenmiş dizine açın. Windows'da ,aar dosyasına bir .zip uzantısı ekleyin, açın ve içeriği ekli dizine kopyalayın. macOS'ta Terminalde unzip komutunu kullanarak .aar dosyasının sıkıştırmasını açın (örneğin, unzip file.aar).

Bu noktada, eksik bileşenleri el ile yüklediniz ve projeniz hatasız bir şekilde derlenmelidir. Aksi takdirde, hata iletisindeki sürüme tam olarak karşılık gelen m2repository .zip arşiv sürümünü indirdiğinizden emin olun ve yukarıdaki adımlarda açıklandığı gibi içeriğini doğru konumlara yüklediğinizi doğrulayın.

Özet

Bu makalede, bağımlılık kitaplıklarının otomatik olarak indirilmesi ve yüklenmesi sırasında gerçekleşebilecek yaygın hatalardan nasıl kurtarabileceğiniz açıklanmıştır. Sorunlu kitaplığın nasıl silineceği ve kitaplığı yeniden indirip yeniden yüklemenin bir yolu olarak projenin nasıl yeniden derleneceği açıklanmıştır. Kitaplığın nasıl indirilip zips klasörüne nasıl yükleneceği açıklanmıştır. Ayrıca, otomatik yollarla çözümlenemeyen sorunlara geçici bir çözüm olarak gerekli dosyaları el ile indirmeye ve yüklemeye yönelik daha ayrıntılı bir yordam da açıklanmıştır.