Я использую webview в своем приложении для Android.http: // ссылка href не работает в Android
У меня есть 3 кнопки 1 для ссылки на веб-сайт, чтобы позвонить по номеру и по электронной почте.
При первом звонке мой сайт работал, http://www.somelink.com.
Но мой телефон: ссылка не работала. Поэтому я включил некоторый код, который запустил мою кнопку tel :.
Проблема в том, что он сделал мой сайт или кнопку http: не работает?
Кнопка html ничего не делает, когда вы нажимаете на нее.
package de.sonae.novolam;
import android.annotation.SuppressLint;
import android.app.Fragment;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebView;
import android.webkit.WebViewClient;
@SuppressLint("SetJavaScriptEnabled")
public class DFragment extends Fragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View mainView = (View) inflater.inflate(R.layout.dfragment, container, false);
WebView webView = (WebView) mainView.findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView wv, String url) {
if (url.startsWith("tel:")) {
Intent intent = new Intent(Intent.ACTION_DIAL,
Uri.parse(url));
startActivity(intent);
}
return true;
}
});
webView.loadUrl("file:///android_asset/contact.html");
return mainView;
}
public boolean shouldOverrideUrlLoading(WebView webView, String url) {
if(url.startsWith("http:") || url.startsWith("https:")) {
webView.loadUrl(url);
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
}
else if (url.startsWith("mailto:")) {
}
// Otherwise allow the OS to handle it
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
return true;
}
}