BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース 新たなWeb認証オプションと.NET MAUI Essentialsを加えたXamarin.Essentials 1.7

新たなWeb認証オプションと.NET MAUI Essentialsを加えたXamarin.Essentials 1.7

ブックマーク

原文(投稿日:2021/09/03)へのリンク

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.iOSXamarin.Androidアプリを.NET MAUIのない.NET 6にアップデートしているが、それでもXamarin.EssentialsのAPIはすべて活用したい、と考える開発者がいることを、私たちは認識しています。そのような希望に応えるために、<UsingMauiEssentials>true</UsingMauiEssentials>を.NET iOSおよびAndroidアプリに追加することで、すべての最新APIを利用できるようにしました。
- James Montemagno、プリンシパルリードプログラムマネージャ、.NET Community

 

プロジェクトの開発の進捗状況や.NET MAUIの次期リリースについて知るには、GitHub wiki roadmapで公開されている公式ロードマップを参照すればよい。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

BT