この記事では、Microsoft Authentication Library for .NET (MSAL.NET) で Xamarin Android 上のシステム ブラウザーを使用する場合に考慮すべきことについて説明します。
注
MSAL.NET バージョン 4.61.0 以降では、ユニバーサル Windows プラットフォーム (UWP)、Xamarin Android、Xamarin iOS はサポートされていません。 Xamarin アプリケーションを MAUI などの最新のフレームワークに移行することをお勧めします。 この非推奨化の詳細については、「Xamarin および UWP 用 MSAL.NET で予定されている廃止のお知らせ」をお読みください。
MSAL.NET 2.4.0 Preview 以降では、MSAL.NET は Chrome 以外のブラウザーをサポートしています。 認証のために、Android デバイスに Chrome をインストールする必要がなくなりました。
カスタム タブをサポートするブラウザーを使用することをお勧めします。 これらのブラウザーの例をいくつか次に示します。
カスタム タブをサポートするブラウザー | パッケージ名 |
---|---|
クロム | com.android.chrome |
Microsoft Edge | com.microsoft.emmx |
Firefox | org.mozilla.firefox の |
エコシア | com.ecosia.android |
キーウィ | com.kiwibrowser.browser |
勇ましい | com.brave.browser (英語) |
Microsoft のテストでは、カスタム タブをサポートするブラウザーが特定されただけでなく、カスタム タブをサポートしていないいくつかのブラウザーも認証用に使用できることが示されました。 これらのブラウザーには、Opera、Opera Mini、InBrowser、Maxthon などがあります。
テストしたデバイスとブラウザー
次の表に、認証の互換性をテストしたブラウザーとデバイスの一覧を示します。
デバイス | ブラウザー | 結果 |
---|---|---|
ファーウェイ/One+ | クロム* | 合格 |
ファーウェイ/One+ | 端* | 合格 |
ファーウェイ/One+ | Firefoxの | 合格 |
ファーウェイ/One+ | 勇ましい* | 合格 |
ワン+ | エコシア* | 合格 |
ワン+ | キーウィ* | 合格 |
ファーウェイ/One+ | オペラ | 合格 |
ファーウェイ | オペラミニ | 合格 |
ファーウェイ/One+ | インブラウザ | 合格 |
ワン+ | マクソン | 合格 |
ファーウェイ/One+ | ダックダックゴー | ユーザーによって認証が取り消された |
ファーウェイ/One+ | UC ブラウザー | ユーザーによって認証が取り消された |
ワン+ | イルカ | ユーザーによって認証が取り消された |
ワン+ | CM ブラウザー | ユーザーによって認証が取り消された |
ファーウェイ/One+ | 何もインストールされていない | AndroidActivityNotFound 例外 |
* カスタム タブをサポートする
既知の問題
ユーザーのデバイス上に有効になっているブラウザーがない場合、MSAL.NET は AndroidActivityNotFound
例外をスローします。
- 対応策:ユーザーに自分のデバイスのブラウザーを有効にするように依頼します。 カスタム タブをサポートするブラウザーを推奨します。
認証が失敗した場合 (たとえば、認証が DuckDuckGo で起動する場合)、MSAL.NET は AuthenticationCanceled MsalClientException
を返します。
- 根本原因:カスタム タブをサポートするブラウザーがデバイスで有効になっていません。 認証を完了できないブラウザーで認証が開始されました。
- 対応策:ユーザーに自分のデバイスのブラウザーを有効にするように依頼します。 カスタム タブをサポートするブラウザーを推奨します。
次のステップ
詳細情報とコード例については、埋め込み Web ブラウザーと Xamarin Android のシステム ブラウザーのどちらかを選択することに関する記事、および「埋め込み Web UI とシステム Web UI の比較」を参照してください。