Share via


Xamarin.Android.Support パッケージに必要な Android サポート ライブラリを手動でインストールする方法を教えてください

Xamarin.Android.Support.v4 の手順の例

必要な Xamarin.Android.Support NuGet パッケージをダウンロードします (たとえば、NuGet パッケージ マネージャーによるインストール)。

ildasm を使用して、NuGet パッケージに必要な android_m2repository.zip のバージョンを確認します。

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

出力例:

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')

ildasm から返された URL を使用して、Google からandroid_m2repository.zipをダウンロードします。 または、現在 Android SDK マネージャーにインストールされている Android Support Repository のバージョンを確認することもできます。

バージョンが NuGet パッケージに必要なものと一致する場合、新しいものをダウンロードする必要はありません。 代わりに、SDK パスの extras\android の下にある既存の m2repository ディレクトリを再圧縮できます (Android SDK マネージャー ウィンドウの上部に示すように)。

ildasm から返された URL の MD5 ハッシュを計算します。 結果の文字列の書式を、すべて大文字で、スペースが含まれないように設定します。 たとえば、必要に応じて $url 変数を調整した後、PowerShell で次の 2 行を実行します (Xamarin.Android からの元の C# コードに基づきます)。

$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 ""

出力例:

F16A3455987DBAE5783F058F19F7FCDF

android_m2repository.zip %LOCALAPPDATA%\Xamarin\zips\ フォルダーにコピーします。 前の MD5 ハッシュ計算ステップの MD5 ハッシュを使用するように、ファイルの名前を変更します。 次に例を示します。

%LOCALAPPDATA%\Xamarin\zips\F16A3455987DBAE5783F058F19F7FCDF.zip

(省略可能)ファイルを %LOCALAPPDATA%\Xamarin\Xamarin.Android.Support.v4\23.4.0.0\content\ に解凍します (content\m2repository サブディレクトリを作成します)。 このステップを省略した場合、ライブラリを使用する最初のビルドは、このステップを完了する必要があるため、少し時間がかかります。 サブディレクトリのバージョン番号 (この例では 23.4.0.0) は、NuGet パッケージのバージョンとまったく同じではありません。 ildasm を使用して、正しいバージョン番号を調べることができます。

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'"

出力例:

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

次のステップ

このドキュメントでは、2016 年 8 月時点での現在の動作について説明されています。 このドキュメントで説明されている手法は、Xamarin の安定したテスト スイートの一部ではないため、将来は使用できない可能性があります。

詳細については、お問い合わせください。または、上記の情報を利用してもこの問題が解決しない場合は、Xamarin で利用できるサポート オプションに関する記事で、連絡オプション、提案、および必要に応じて新しいバグを登録する方法を参照してください。