WebViewは、Chromeでアプリを起動するために使用しているものであれば、カスタムURIスキームをデフォルトで処理しません。
WebViewClient.shouldOverrideUrlLoading()をオーバーライドしてURLでURIスキームが使用されているかどうかをテストし、アプリを起動して一致する場合はtrueを返し、そうでない場合はfalseを返します。
WebView webView = new WebView(context);
webView.setWebViewClient(new WebViewClient() {
@Override
@TargetApi(Build.VERSION_CODES.N)
public boolean shouldOverrideUrlLoading (WebView view, WebResourceRequest request) {
if (request.getUrl().getScheme().startsWith("myscheme")) {
//launch app
return true;
} else {
return false;
}
}
@Override
public boolean shouldOverrideUrlLoading (WebView view, String url) {
if (Uri.parse(url).getScheme().startsWith("myscheme")) {
//launch app
return true;
} else {
return false;
}
}
}
);
エラーログは何ですか? – KAR