現在のステータスは何ですか。Android webView (ブラウザ/Chrome カスタム タブではない) に、「bankid:///?autostarttoken=xxxx-xxxxc&redirect=https://...」のようなカスタム URL スキームのリンクを解釈させることはできますか?
ここで予想される動作は、リンクをロードするときに BankID アプリが開くことです。代わりに「err_unknown_url_scheme」を取得します。これに対する回避策はありますか? それとも、インテントを使用する唯一の方法ですか?
以下のように Intent を使用してみましたが、動作しますが、リダイレクト パラメータ URL に問題があり、望ましくないブラウザが開きます。webView/app にとどまるように app id/null に置き換えましたが、webView で期待されるコールバック URL を取得できませんでした。
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
String url = request.getUrl().toString();
if(!url.startsWith("http") && !url.startsWith("https")) {
Uri newUri = replaceUriParameter(Uri.parse(url),
"redirect", BuildConfig.APPLICATION_ID);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(newUri);
startActivityForResult(intent, START_ACTIVITY_FOR_RESULT_LOGIN);
view.reload();
return true;
}
}