Android Studio初心者です。webviewにおけるintentの使用について質問です。
この度、Androidアプリの作成を学習したいと思い、手始めにwebviewでとあるHPを開くアプリを作成しています。
そのHP自体を開くことは出来たのですが、HP内にある問い合わせボタンを押すと通常のクロームなどのブラウザアプリではメールアプリが立ち上がるのに、
作成しているアプリ上ではメールアプリを立ち上げることが出来ず、http接続になってしまいページエラーとなってしまいます。
エラー内容は、
ウェブページへのアクセス不可
ウェブページ(mailto:info@xxxx.jp)は次の理由で読み込めませんでした。
net:ERR_UNKNOWN_URL_SCHEME
です。
ネットで検索をかけるなどして調べた上で、MainActivity.java内にて下記の記述をしております。
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); WebView myWebView = (WebView) findViewById(R.id.webView); myWebView.setWebChromeClient(new WebChromeClient()); myWebView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebResourceRequest request) { Intent intent = new Intent(); String url = null; if(url.startsWith("mailto:")) intent = new Intent(Intent.ACTION_SENDTO, Uri.parse(url)); intent.setType("message/rfc822"); startActivity(intent); return true; } }); myWebView.getSettings().setJavaScriptEnabled(true); myWebView.loadUrl("URL"); }
ちなみにですが、件名や本文は問い合わせ内容によって変わるためこちら側で内容を固定することは出来ません。
どなたか何か足りない部分・修正する部分がお分かりになる方、ご回答宜しくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。