アンドロイドNとしてターゲットプラットフォームを持っている場合、それは働いていない: は、ここで私は、このサイト
のJavaコードで見つける方法を以下に示していますこのメソッドのシグネチャがあります。
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request)
すべてのAndroidのバージョンによってサポートされているものは、このメソッドのシグネチャを持っています
public boolean shouldOverrideUrlLoading(WebView view, String url)
私はそれがすべてのバージョンで動作させるために何をすべきか?
あなたは...それはN
@SuppressWarnings("deprecation")
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.startsWith("tel:")) {
initiateCall(url);
return true;
}
if (url.startsWith("mailto:")) {
sendEmail(url.substring(7));
return true;
}
return false;
}
@RequiresApi(Build.VERSION_CODES.N)
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
String url = request.getUrl().toString();
if (url.startsWith("tel:")) {
initiateCall(url);
return true;
}
if (url.startsWith("mailto:")) {
sendEmail(url.substring(7));
return true;
}
return false;
}
で両方の下APIをターゲットになるあなたは、コードの下に、これを確認してください...あなたのコードを変更する必要があり
Android N
を含むすべてのAPIの方法
の両方をオーバーライドする必要があります
あなたはAndroidのドキュメントを見ましたか?彼らはそこに置き換え機能へのリンクを持っています。 boolean shouldOverrideUrlLoading(WebViewビュー、 WebResourceRequest request) –
はい、Gabe Sechan私はアンドロイドのドキュメントを訪問しましたが、私が初心者であるときには、私は完全に置換しませんでした。だから私はコードスニペット –
その些細な取り替えを求めています。コードスニペットは必要ありません。あなたがそれほど初心者であれば、座って考え、自分でそのような問題を解決する方法を学ぶ方がよいでしょう。 –