Xamarin.Formsのサポートは、Xamarinサポートポリシーに従って、2024年5月1日に終了しました。
Xamarin.Formsを含むすべてのXamarin SDKについて、Xamarin Supportは2024年5月1日に終了しました。
Xamarin.Formsは、.NET 6の一部として2022年5月に.NET Mauiに引き継がれ、現在.NET MAUIサポートポリシーで説明されているようにサポートされています。公式のアップグレードガイダンスに従って、Xamarinアプリケーションを.NETの最新バージョンに持ち込みます。
すべての開発者と貢献者に、Xamarinコミュニティの一員であることに感謝します。 .net Mauiでお会いしましょう!
Xamarin.Formsは、iOS、Android、Windows、およびMacOSのネイティブアプリを完全にC#で迅速に構築する方法を提供します。
プラットフォームの詳細については、https://www.xamarin.com/formsをご覧ください。
| プラットフォーム/機能 | パッケージ名 | 安定した | プレレリーズ | 毎晩の餌(メインブランチ) |
|---|---|---|---|---|
| コア | Xamarin.Forms | |||
| Applinks | Xamarin.Forms.AppLinks | |||
| マップ | Xamarin.Forms.Maps | |||
| maps.gtk | Xamarin.Forms.Maps.GTK | |||
| maps.wpf | Xamarin.Forms.Maps.WPF | |||
| ページ | Xamarin.Forms.Pages | |||
| pages.azure | Xamarin.Forms.Pages.Azure | |||
| platform.gtk | Xamarin.Forms.Platform.GTK | |||
| Platform.wpf | Xamarin.Forms.Platform.WPF | |||
| Visual.material | Xamarin.Forms.Visual.Material |
最新の開発ビルドを使用する場合は、このブログ投稿を読む必要があります。
Nugetソースに毎晩フィードを追加するか、次のコンテンツを使用して、アプリにnuget.configをアプリに追加します(ソリューションファイルがある場合の同じディレクトリに配置)。
<? xml version = " 1.0 " encoding = " utf-8 " ?>
< configuration >
< packageSources >
< clear />
< add key = " xamarin-ci " value = " https://aka.ms/xf-nightly/index.json " />
< add key = " NuGet.org " value = " https://api.nuget.org/v3/index.json " />
</ packageSources >
</ configuration >注:このnuget.configは、マシン上の他のアプリの復元を潜在的に開始する可能性がある場合を除き、アプリケーションにある必要があります。
アプリケーションの依存関係を変更して、最新バージョンを取得するために*を取得します。
下の両方の方法について、ビルドを成功させるためにこのナゲットフィードを追加する必要があります。この方法を確認するには、このドキュメントページを参照してください。
VS 2019+は、Xamarin.Formsを開発するために必要です。まだインストールされていない場合は、こちらからダウンロードできます。 VS 2019+コミュニティは完全に無料です。 VS 2019+を初めてインストールする場合は、「カスタム」インストールタイプを選択し、機能リストから以下を選択してインストールしてください。
Individual Components > .NET > .NET Framework 4.6.1 SDK, .NET Framework 4.6.1 targeting pack, .NET Framework 4.7.2 SDK, .NET Framework 4.7.2 targeting pack 。Individual Components > SDKs, libraries, and frameworks > Windows 10 SDK (10.0.19041.0), Windows 10 SDK (10.0.18362.0), Windows 10 SDK (10.0.16299.0) 。Individual Components > Development Activities > Xamarin Remoted SimulatorIndividual Components > Emulators > Hyper-V Intel Hardware Accelerated Execution Manager (HAXM)Android 10.0 API 29 SDKおよびAndroid 9.0 API 28 SDKは、Xamarin.Formsを開発するために必要です。 Xamarin Android SDKマネージャーを使用してインストールできます。
また、Xamarin Android Device Managerをインストールすることもお勧めします。これにより、上にインストールされているHAXMツールが使用され、AndroidデバイスをエミュレートするAndroid仮想デバイス(AVD)を構成できます。すでにVS 2019+がインストールされている場合は、Visual Studioインストーラーを介してVS 2019+インストールを変更することにより、これらの機能がインストールされていることを確認できます。
SDKの欠落についてエラーが発生している場合は、プロビジョニングスクリプトを実行できます。スクリプト全体を実行するのに時間がかかることに注意してください。スクリプトの仕組みをよりよく理解するには、build.cakeファイルを自由にチェックしてください。
CMDで
build.cmd -Target provision
PowerShell
./build.ps1 -Target provision
注:build.ps1がデジタル署名されていないというエラーが発生した場合は、管理者としてPowerShellを開き、最初にSet-ExecutionPolicy RemoteSignedを実行して解決します。
cmd/powershell/sh(新しい!詳細はこちら)
dotnet tool install Cake.Tool -g
dotnet cake --target=provision
まだインストールされていない場合は、ダウンロードとセットアップの手順をここにあります。
Mac用のVisual Studioを使用した現在のマルチターゲティングの制限により、Xamarinフォームソリューションに取り組む前に、プロジェクトを手動で構築/復元する必要があります。
このプロセスを容易にするために私たちがまとめたいくつかの異なるオプションを以下に示します
ブランチ3.5+には、VSMACを構築および開くために使用できるケーキスクリプトターゲットが付属しています
./build.sh --target vsmacまたは、プロビジョニングに関するWindowsセクションで上記のように、新しいcake.toolを使用することもできます。
dotnet tool install Cake.Tool -g
dotnet cake --target=provision
ケーキスクリプトがない以前のブランチで作業する場合、次のbuild.shスクリプトを使用できます。
スクリプトを実行したくない場合:
msbuild Xamarin.Forms.Build.Tasks/Xamarin.Forms.Build.Tasks.csprojXamarin.Forms.Build.Tasks.csprojの一部であるbin/objフォルダーを削除する場合です。 Xamarin.Formsソリューションを開くと、エラーリストペインの下にいくつかのエラーと警告があることがわかります。 Build + IntelliSenseのフィルターを変更してBuild Onlyを変更することで、これを解決できます。この時点で、ソリューションを正常に構築できるはずです。
デフォルトでは、 Xamarin.Forms.Controlsプロジェクトには、さまざまなAPIキーが各プラットフォーム(マップなど)に特定の機能にアクセスする構成がありません。ソリューションを初めて構築するとき、 controlgallery.configファイルがそのプロジェクト内で生成されます。これは次のようになります。
UWPMapsAuthKey:
マップを使用していない場合は、これを無視できます。マップを使用したい場合は、識別子の直後に挿入されたこれらの各サービスの独自のAPIキーを取得する必要があります( UWPMapsAuthKey:abcdefghijklmnopqrstuvwxyz )。これらのそれぞれを次のように取得する方法を見つけることができます。
UWPMapsAuthKey at https://microsoft.com/maps/create-a-bing-maps-key.aspx Androidの動作により、マップAPIキーは実行時に注入できません。その結果、このキーをXamarin.Forms.ControlGallery.Android/Propertiesの下のMapsKey.csファイルに追加する必要があります。
[assembly: Android.App.MetaData("com.google.android.maps.v2.API_KEY", Value = "INSERT_KEY_HERE")]
Google Maps APIキーをこちらから取得する方法をご覧ください。
nuget.exe 4.0以上と最新の.NETコアSDKがあることを確認してください。 macosでは、msbuildコマンド( /p:Platform=iPhoneSimulator )でプラットフォームを指定する必要があります。
msbuild /restore Xamarin.Forms.sln
環境のセットアップに応じて、特にWindowsでUIテストをデバッグ /実行できるようにする前に、いくつかのことを構成する必要がある場合があります。
Xamarin.Forms.ControlGallery.AndroidのAPKファイルを生成してください。これを行う最も簡単な方法は、プロジェクトを右クリックして「展開」を選択することです。ソリューションを再構築すると、APKが失われ、再度生成する必要があることに注意してください。これらの手順が世話をした後、あなたは行くのが良いはずです。テストエクスプローラーですべてのUIテストを確認し、独自の便利さを検索し、個々のテストをすばやく実行できます。
UWP UIテストを実行するには:
Xamarin.Forms.ControlGallery.WindowsUniversalプロジェクトを起動して、ControlGalleryアプリケーションをシステムにインストールします。これで、UWP UIテストのいずれかを実行できるようになりました。
.NET Foundationが使用するスタイルに従いますが、いくつかの例外を除きます。
privateキーワードは使用しません。Tools > Optionsを介してWindows用のVisual Studioでこの設定を変更し、 Text Editor > C#に移動し、「Ceep Tabs」ラジオオプションを選択することができます。 Mac用のVisual Studioでは、 Source Code > Code Formatting > C# source code設定を介して設定され、 Convert tabs to spacesチェックボックスを無効にします。Source Code > Code Formatting > C# source codeとDesired file widthを120に変更して、Mac用のVisual Studioで設定できます。 GitHubの問題を使用して問題を追跡します。可能であれば、バグレポートとともにバグの複製を提出してください。