Autenticación de Android a través de webview

Lo siento porque soy muy ecológico en este desarrollo de Android, y tal vez estoy ganando un caballo muerto aquí: un software que usamos tiene una versión móvil, pero es un sitio web móvil, estoy tratando de construir esto en un independiente aplicación web usando webview.

La aplicación me llevará a la pantalla de inicio de sesión, pero cuando intento iniciar sesión, la ventana emergente muestra su inicio de sesión, y en mi vista web, se queda allí. No se mueve más allá de este punto. En el navegador predeterminado funciona bien.

¿Puede ayudarme en lo que debo hacer para pasar esto en los términos más simples? ;-) ¡Gracias!

package com.giantflyingsaucer;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class WebPageLoader extends Activity
{
final Activity activity = this;

@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
    setContentView(R.layout.main);
    WebView webView = (WebView) findViewById(R.id.webview);
    webView.getSettings().setJavaScriptEnabled(true);

    webView.setWebChromeClient(new WebChromeClient() {
        public void onProgressChanged(WebView view, int progress)
        {
            activity.setTitle("Loading...");
            activity.setProgress(progress * 100);

            if(progress == 100)
                activity.setTitle(R.string.app_name);
        }
    });

    webView.setWebViewClient(new WebViewClient() {
        @Override
        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl)
        {
            // Handle the error
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url)
        {
            view.loadUrl(url);
            return true;
        }
    });

    webView.loadUrl("http://URL.USED.FOR/WEBAPP");
}
}

preguntado el 22 de mayo de 12 a las 16:05

2 Respuestas

Esto se resolvió usando @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); }

contestado el 23 de mayo de 12 a las 13:05

tal vez su inicio de sesión está tratando de hacer uso de algún complemento web. Intente agregar uno o ambos de estos:

    mWebView.getSettings().setPluginState(WebSettings.PluginState.ON);
    mWebView.getSettings().setPluginsEnabled(true);

contestado el 22 de mayo de 12 a las 17:05

¡Gracias! voy a intentarlo. donde exactamente es el mejor lugar para agregar el código. - Cervezas Mate

En las dos líneas de código que obtengo: PluginState no se puede resolver o no es un campo mWebView no se puede resolver - Cervezas Mate

¿arregló sus importaciones para que se importara? - chicoespuma

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.