`
shendixiong
  • 浏览: 393374 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

关于android 端,人人网以及新浪网 webview 页面缓存问题

阅读更多

前一段时间就在开放新浪的oauth 2.0。我是用的java的SDK,而且用到了webView。

   在我第一次授权成功的时候,新浪端应该是做了页面缓存的。

而在我第二次授权的时候,会出现自动登录的现象。

 

这样就导致了,该用户只能用一个帐号登录的。这样是与设计要求不符合的。用户体验也是相当的不好。

在网上也找到了相关的资料。

  其中

webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);

 

这个方法我开始认为是最有效的,但是在却没起到任何作用。

 

而一个应用的缓存,如果你手机root过的话,那么你是可以用RE在该应用的目录下能看到缓存的数据的。所以,你可以尝试删除该应用的缓存。

File file = CacheManager.getCacheFileBaseDir();
            if (file.exists()) {
                file.delete();
            }
            webview.clearCache(true);
            webview.clearHistory();
            webview.clearFormData();
            context.deleteDatabase("webview.db");
            context.deleteDatabase("webviewCache.db");

 而我本人用的是:

CookieSyncManager.createInstance(context);
            CookieManager cookieManager = CookieManager.getInstance();
            cookieManager.removeAllCookie();

 

 这个方法在用一定的延迟,也就是说第一次你授权成功,第二次点授权的时候,还是会自动登录,第三次就不会了!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics