Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Android: guarda valor en LocalStorage antes de WebView.loadUrl ()

Antes de cargar una URL en WebView, quiero establecer un valor dentro del navegador LocalStorage.

Hasta ahora, la única manera en la que logré establecer este valor es después de cargar la página. Así es como puedo establecer el valor:

browser.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { loadUrl("javascript: LocalStorage.set('namespace', 'key', 'value');"); } } 

onPageStarted() anular el método onPageStarted() , pero el valor no se almacena.

¿Cómo puedo establecer esta clave / valor antes de la llamada browser.loadUrl() ? La url / página depende de este valor, así que necesito establecer el valor antes de cargar la página.

One Solution collect form web for “Android: guarda valor en LocalStorage antes de WebView.loadUrl ()”

Lo que puede hacer es establecer un redireccionamiento en el javascript a la url real y cargar el javascript más redireccionar con webview.loadData() .

  String injection = "<html><head><script type='javascript'>LocalStorage.set('namespace', 'key', 'value');window.location.replace('YOUR_URL_HERE');</script></head><body></body></html>"; webview.loadData(injection, "text/html", null); 

Sin embargo, tenga en cuenta que puede que necesite guardarlo en un archivo antes de que funcione: consulte Cómo cargar un redireccionamiento de javascript en la vista web de android.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.