Xamarin.Essentials
は、さまざまなモバイルプラットフォームでシームレスに動作するアプリケーションの開発を実現するための重要なライブラリだ。ネイティブAPIにアクセスして、アプリ内から容易に利用するための手段を提供してくれる。数から言えば、.NET開発環境において最も広範に利用されているライブラリのひとつである。
Xamarin.Essentials 1.7リリースの中心は、重大なバグの修正とWeb Authentication APIの強化にある。Xamarin.Essentialsの一部であるWebAuthenticator
は、独自のASP.NET Core
サーババックエンドを通じたアプリケーションへの認証機能の追加を可能にするSDKだ。
バグ修正とAuthenticatorの他、認証セッションをプライベートでローンチするためのプライベート認証オプションが新たに追加された。このアプローチによって、認証セッション間のクッキーやブラウジングデータを共有せず、要求毎に新たなログインセッションとすることが可能になる。
Xamarin.Essentials
1.7では、iOSモバイルアプリ用にWebAuthenticatorOptions
のセットアップが可能になった。次のようなコードで使用することができる。
var url = new Uri("https://mysite.com/mobileauth/Microsoft");
var callbackUrl = new Uri("myapp://")
var authResult = await WebAuthenticator.AuthenticateAsync(new WebAuthenticatorOptions
{
Url = url,
CallbackUrl = callbackUrl,
PrefersEphemeralWebBrowserSession = true
});
今回導入されたもうひとつの重要なものは、Xamarin.Essentials
の.NET MAUIへの移植と、その将来的な開発である。現在の.NET MAUI Essentialsは.NET MAUI GitHubリポジトリの一部で、Microsoftとオープンソースコミュニティによって活発な開発が行われている。
.NET MAUIアプリの内部で.NET MAUI Essentialsを使用可能にするためには、.csproj
ファイル内に<UseMaui>true</UseMaui>
というコードスニペットを配置する必要がある。その上でusing Microsoft.Maui.Essentials;
を記述すれば、ネームスペースがコードファイルに追加されて、すべてのAPIを使用することが可能になる。
現在、既存の
Xamarin.iOS
やXamarin.Android
アプリを.NET MAUIのない.NET 6にアップデートしているが、それでもXamarin.EssentialsのAPIはすべて活用したい、と考える開発者がいることを、私たちは認識しています。そのような希望に応えるために、<UsingMauiEssentials>true</UsingMauiEssentials>
を.NET iOSおよびAndroidアプリに追加することで、すべての最新APIを利用できるようにしました。
- James Montemagno、プリンシパルリードプログラムマネージャ、.NET Community
プロジェクトの開発の進捗状況や.NET MAUIの次期リリースについて知るには、GitHub wiki roadmapで公開されている公式ロードマップを参照すればよい。