''net::ERR_unknown_url_scheme'' en webview android studio
Résolu
ILISS
-
Posky -
Posky -
bonjour
premièrement je suis pas doué en java , j essai de monter une Webview en Android studio a l aide des tutos youtube. enfin j ai coller le lien de mon site wordpress . le problème c 'est que j ai un code sur mon site wordpress en peux passer une Appel téléphonique sur le navigateur google chrome sur un smartphone, mais dans le webview ça donne ce message :
net::ERR_UNKNOWN_URL_SCHEME
voila mon code:
MainActivity.java
Mon Androidmanifest.xml
premièrement je suis pas doué en java , j essai de monter une Webview en Android studio a l aide des tutos youtube. enfin j ai coller le lien de mon site wordpress . le problème c 'est que j ai un code sur mon site wordpress en peux passer une Appel téléphonique sur le navigateur google chrome sur un smartphone, mais dans le webview ça donne ce message :
net::ERR_UNKNOWN_URL_SCHEME
voila mon code:
MainActivity.java
import androidx.appcompat.app.AppCompatActivity; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Bundle; import android.view.KeyEvent; import android.view.View; import android.view.Window; import android.view.WindowManager; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.Button; import android.widget.RelativeLayout; public class MainActivity extends AppCompatActivity { WebView webView; RelativeLayout relativeLayout; Button btnNoInternetConnection; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // remove title requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_main); webView = (WebView) findViewById(R.id.webView); // loadUrl webView.setWebViewClient(new WebViewClient()); btnNoInternetConnection = (Button) findViewById(R.id.btnNoConnection); relativeLayout = (RelativeLayout) findViewById(R.id.relativeLayout); checkConnection(); WebSettings webSettings = webView.getSettings(); webSettings.setJavaScriptEnabled(true); // webSettings.setDomStorageEnabled(true); // webSettings.setUseWideViewPort(true); webSettings.setAllowContentAccess(true); webSettings.setAllowFileAccess(true); webSettings.setAppCacheEnabled(true); btnNoInternetConnection.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { checkConnection(); } }); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK && webView.canGoBack()){ webView.goBack(); return true; } return super.onKeyDown(keyCode, event); } public void checkConnection(){ ConnectivityManager connectivityManager = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo wifi = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI); NetworkInfo mobileNetwork = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); if (wifi.isConnected()){ webView.loadUrl("https://www.groupe-alakssa.ma/"); webView.setVisibility(View.VISIBLE); relativeLayout.setVisibility(View.GONE); } else if (mobileNetwork.isConnected()){ webView.loadUrl("https://www.groupe-alakssa.ma/"); webView.setVisibility(View.VISIBLE); relativeLayout.setVisibility(View.GONE); } else { webView.setVisibility(View.GONE); relativeLayout.setVisibility(View.VISIBLE); } } }
Mon Androidmanifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.akssa.groupe"> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="Android.permission.CALL_PHONE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name="com.akssa.groupe.SplashScreen"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.akssa.groupe.MainActivity"> </activity> </application> </manifest>
A voir également:
- Net::err_unknown_url_scheme
- Que veut dire net::err_unknown_url_scheme - Meilleures réponses
- Traduire le mot allemand net::err_unknown_url_scheme - Meilleures réponses
- ERR_UNKNOWN_URL_SCHEME : Problème de redirection - Forum HTML
- Net framework 2.0 - Télécharger - Divers Utilitaires
- Paint net - Télécharger - Dessin & Illustration
- Logo .net - Télécharger - Études & Formations
- Net framework 4.0 - Télécharger - Divers Utilitaires
2 réponses
Bonjour,
Il faut que tu surcharges le WebViewClient
Il faut que tu surcharges le WebViewClient
webView.setWebViewClient(new WebViewClient() { public boolean shouldOverrideUrlLoading(WebView view, String url) { if (url.startsWith("tel:")) { Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse(url)); startActivity(intent); return true; } return false; } });
ça marche comme il faut .