Freigeben über


Wie kann ich die Android-Unterstützungsbibliotheken, die für die Xamarin.Android.Support-Pakete erforderlich sind, manuell installieren?

Beispielschritte für Xamarin.Android.Support.v4

Laden Sie das gewünschte Xamarin.Android.Support-NuGet-Paket herunter (z. B. durch eine Installation über den NuGet-Paket-Manager).

Überprüfen Sie mit ildasm, welche Version von android_m2repository.zip das NuGet-Paket erfordert:

ildasm /caverbal /text /item:Xamarin.Android.Support.v4 packages\Xamarin.Android.Support.v4.23.4.0.1\lib\MonoAndroid403\Xamarin.Android.Support.v4.dll | findstr SourceUrl

Beispielausgabe:

property string 'SourceUrl' = string('https://dl-ssl.google.com/android/repository/android_m2repository_r32.zip')
property string 'SourceUrl' = string('https://dl-ssl.google.com/android/repository/android_m2repository_r32.zip')
property string 'SourceUrl' = string('https://dl-ssl.google.com/android/repository/android_m2repository_r32.zip')

Laden Sie android_m2repository.zip von Google mit der URL herunter, die von ildasm zurückgegeben wurde. Alternativ können Sie überprüfen, welche Version des Android Support Repository Sie zurzeit im Android-SDK-Manager installiert haben:

Wenn die Version mit der übereinstimmt, die Sie für das NuGet-Paket benötigen, müssen Sie keine neue Software herunterladen. Sie können stattdessen das vorhandene m2repository-Verzeichnis neu zippen, das sich unter extras\android im SDK-Pfad befindet (wie oben im Android SDK-Manager-Fenster dargestellt).

Berechnen Sie den MD5-Hash der URL, die von ildasm zurückgegeben wurde. Formatieren Sie die resultierende Zeichenfolge so, dass nur Großbuchstaben und keine Leerzeichen verwendet werden. Passen Sie z. B. die Variable $url nach Bedarf an, und führen Sie dann die folgenden zwei Zeilen (die auf dem ursprünglichen C#-Code aus Xamarin.Android basieren) in PowerShell aus:

$url = "https://dl-ssl.google.com/android/repository/android_m2repository_r32.zip"
(([System.Security.Cryptography.MD5]::Create()).ComputeHash([System.Text.Encoding]::UTF8.GetBytes($url)) | %{ $_.ToString("X02") }) -join ""

Beispielausgabe:

F16A3455987DBAE5783F058F19F7FCDF

Kopieren Sie android_m2repository.zip in den Ordner "%LOCALAPPDATA%\Xamarin\zips\". Benennen Sie die Datei um, um den MD5-Hash aus dem vorherigen Hashberechnungsschritt zu verwenden. Zum Beispiel:

%LOCALAPPDATA%\Xamarin\zips\F16A3455987DBAE5783F058F19F7FCDF.zip

(Optional) Entpacken Sie die Datei in %LOCALAPPDATA%\Xamarin\Xamarin.Android.Support.v4\23.4.0.0\content\ (Erstellen eines Unterverzeichnisses "content\m2repository "). Wenn Sie diesen Schritt überspringen möchten, nimmt der erste Build, der diese Bibliothek verwendet, etwas mehr Zeit in Anspruch, da er diesen Schritt durchführen muss. Die Versionsnummer dieses Unterverzeichnisses (23.4.0.0 in diesem Beispiel) ist nicht ganz dieselbe wie die Versionsnummer des NuGet-Pakets. Die richtige Versionsnummer können Sie mithilfe von ildasm ermitteln:

ildasm /caverbal /text /item:Xamarin.Android.Support.v4 packages\Xamarin.Android.Support.v4.23.4.0.1\lib\MonoAndroid403\Xamarin.Android.Support.v4.dll | findstr /C:"string 'Version'"

Beispielausgabe:

property string 'Version' = string('23.4.0.0')}
property string 'Version' = string('23.4.0.0')}
property string 'Version' = string('23.4.0.0')}

Nächste Schritte

In diesem Artikel wird das im August 2016 aktuelle Verhalten besprochen. Die in diesem Artikel beschriebene Technik ist kein Teil einer stabilen Testsammlung für Xamarin. Sie könnte daher in Zukunft nicht mehr unterstützt werden.

Wenn Sie weitere Unterstützung benötigen, kontaktieren Sie uns. Wenn das Problem auch nach Zuhilfenahme der obigen Informationen weiter besteht, lesen Sie die Informationen unter Hilfe zu Visual Studio erhalten. Dort finden Sie alle Kontaktoptionen, Vorschläge und, falls notwendig, Anleitungen zum Erstellen eines neuen Bugs.