TransWikia.com

android studio mostar mesaje de que esta deconetado pero sin mostrar el error por defecto app hibridad

Stack Overflow en español Asked by bryan mercado on December 20, 2021

hola soy nuevo tengo la urgencia de crear un aplicativo para android y bueno lo solucione con un Webview en android studio 4/java, y listo pero por casulidad desconete los datos y cuando
inicie la aplicasion que me mostro esto

solo deseo mostrar un simple mesaje como se necesita internet o esta deconetado como soy neofito y solo uso progrmacion web php/mysql/jqueri etc no tengo idea de como se realisa esa comunicasion con en WebView a aplicativo nativo de android yo solo segui los tutoriales paso a paso y me comi mucha informacion en intnet y me costo un mundo,

por ende pido su ayuda

ejemplo

One Answer

Considera dos opciones.

Mostrar Toast al no tener conexión a internet.

Puedes validar si existe conexion y en caso de no existir, mostrar un Toast

        if (isOnline(getApplicationContext())) { 
    
          //Hay conexión...!

        } else {
           Toast.makeText(getApplicationContext(),"NO hay conexión!",Toast.LENGTH_SHORT).show(); 
        }

Revisa esta respuesta

Verificar internet App Android Studio

Otra opcion es que al detectar la falta de conectividad cargues una pagina html dentro del WebView.


Mostrar pagina web al no tener conexión a internet.

Primeramente debes crear el directorio /assets en tu proyecto y guardar ahí tu archivo .html "local", el cual se mostrará cuando no se tenga conexión a internet.

Como poner y mostrar un archivo html en mi proyecto de android studio?

introducir la descripción de la imagen aquí

Para detectar conectividad, requieres los permisos:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET"/>

Este sería un ejemplo, que cargaría el html llamado mypage.html almacenado en el directorio /assets de tu proyecto en caso de no existir conectividad, de otra forma se mostrará la url https://es.stackoverflow.com/

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

        WebView webView = findViewById(R.id.webView);
        webView.getSettings().setJavaScriptEnabled(true);
        if (isOnline(getApplicationContext()) {
            //Existe conexion, muestra pagina.
            webView.loadUrl("https://es.stackoverflow.com/questions/111923/verificar-internet-app-android-studio");
        } else {
            //*NO EXISTE CONEXION.
            webView.loadUrl("file:///android_asset/mypage.html");
        }


    }

Answered by Elenasys on December 20, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP