Borrando las cookies de un WebView en Android
Estoy trabajando en una aplicación para Twitter para Android y el otro día me encontré con un problema, en realidad con problemas me encuentro todos los días pero este voy a comentarlo. Lo primero que quiero decir que la aplicación no es la típica aplicación de Twitter para llevar tu timeline, es algo diferente.
Bueno... el problema con el que me encontré era que a la hora de logarme vía OAuth en Twitter en el sistema multicuenta que estoy creando se quedaban las cookies guardadas y al intentar logarme con la segunda cuenta seguía en la sesión de la anterior, por lo que era imposible.
Después de darle muchas vueltas encontré como. Debemos usar las clases CookieSyncManager y CookieManager para poder hacerlo. Lo primero es generar la instancia y lo hacemos con la primera clase, es importante que se haga antes de crear el WebView. Luego eliminamos las cookies y finalmente sincronizamos.
Aquí os dejo el método onCreate, al verlo parece sencillo pero a mi me llevó unos días dar con la forma.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
app = (TwitterApplication)getApplication();
CookieSyncManager.createInstance(this);
webView = new WebView(this);
webView.setWebViewClient(webViewClient);
setContentView(webView);
CookieManager.getInstance().removeAllCookie();
CookieManager.getInstance().removeExpiredCookie();
CookieManager.getInstance().removeSessionCookie();
CookieSyncManager.getInstance().sync();
}También te puede interesar
Comentarios
Shop Beats by Dre Headphones Cheap at Official Authorized Store,find the Beats by Dre Headphones that's right for you.
http://www.cheapbeatsbydr-dre-sales.com/
El blog de Javielinux

