由于项目需要,webview需要与app进行交互,其实最重要的一个功能是登陆。从app端通过js传递相应参数到网页端进行登陆。现在就遇到一个屌毛问题,app有可以多帐号切换登陆的,而网页端登陆成功之后会保存cookie,就出现了切换帐号之后没清除webview的cookie而导致显示了上一个用户的信息。故需要在webview的Activity onCreate()里面清除所有cookie,以保证用户数据来源。
相关代码:
//清除所有cookie private void removeAllCookie() { CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(webview.getContext()); CookieManager cookieManager = CookieManager.getInstance(); cookieManager.setAcceptCookie(true); cookieManager.removeSessionCookie(); String testcookie1 = cookieManager.getCookie(urlpath); cookieManager.removeAllCookie(); cookieSyncManager.sync(); String testcookie2 = cookieManager.getCookie(urlpath); }