안드로이드 앱 캐시 삭제

개발/안드로이드 2017. 10. 18. 15:22
반응형

안드로이드(Android) 개발 시 WebView, 내장 컴포넌트 등을 사용하다보면 캐시가 많이 생성되어 원하는 결과를 얻지 못할때가 있습니다. 

특히, WebView의 경우 웹페이지가 리뉴얼 되거나 하면 캐시로 인해 이전 웹페이지가 보여질때가 있습니다.

웹캐시를 제거하기 위해 webview.clearHistory(), webview.clearCache(true)로 지워도 안될때가 있습니다.


이럴때 전 앱캐시도 같이 지웁니다. 그러면 정상적으로 보여지더군요.


안드로이드에서 앱 캐시 지우는 코드 입니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public void clearAppCache(Context _oContext, java.io.File _oDir)
{
    java.io.File _oFile = _oDir;
 
    if(_oFile==null)
        _oFile = _oContext.getCacheDir();
    if(_oFile==null)
        return;
 
    java.io.File[] _oChildrenFile = _oFile.listFiles();
    try
    {
        for(int i=0;i<_oChildrenFile.length;i++)
        {
            if(_oChildrenFile[i].isDirectory())
                clearApplicationCache(_oContext, _oChildrenFile[i]);
            else
                _oChildrenFile[i].delete();
        }
    }
    catch(Exception e)
    {        
    }
}
cs





반응형
admin