iPhone에서 UIWebView 캐시를 지우는 방법
따라서 몇 가지 제안:
[[NSURLCache sharedURLCache] removeCachedResponseForRequest:NSURLRequest];
이렇게 하면 특정 요청에 대한 캐시된 응답이 제거되며 UIWebView에서 실행된 모든 요청에 대해 캐시된 모든 응답을 제거하는 호출도 있습니다.[[NSURLCache sharedURLCache] removeAllCachedResponses];
그런 다음 UIWebView를 사용하여 연결된 쿠키를 모두 삭제할 수 있습니다.for(NSHTTPCookie *cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]) { if([[cookie domain] isEqualToString:someNSStringUrlDomain]) { [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie]; } }
그것이 당신을 얻는 곳을 알려주십시오.나는 거의 같은 문제가있었습니다.UIWebView에서 로컬 웹 페이지를 다시로드 할 때마다 이전 페이지가 표시되기 때문에 webview 캐시를 지우고 싶었습니다.그래서 단순히 요청의 cachePolicy 속성을 설정하여 해결책을 찾았습니다. NSMutableURLRequest를 사용하여 이 속성을 설정합니다. UIWebView를 다시 로드하면 모든 것이 잘 작동합니다.
NSURL *url = [NSURL fileURLWithPath:MyHTMLFilePath]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; [request setCachePolicy:NSURLRequestReloadIgnoringLocalCacheData]; [self.webView loadRequest:request];
도움이 되기를 바랍니다!캐싱을 완전히 비활성화하지 마십시오. 앱 성능이 저하되고 불필요합니다. 중요한 것은 앱 시작 시 캐시를 명시적으로 구성하고 필요할 때 제거하는 것입니다.
따라서
application:DidFinishLaunchingWithOptions:
에서 캐시 제한을 다음과 같이 구성합니다.- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { int cacheSizeMemory = 4*1024*1024; // 4MB int cacheSizeDisk = 32*1024*1024; // 32MB NSURLCache *sharedCache = [[[NSURLCache alloc] initWithMemoryCapacity:cacheSizeMemory diskCapacity:cacheSizeDisk diskPath:@"nsurlcache"] autorelease]; [NSURLCache setSharedURLCache:sharedCache]; // ... other launching code }
적절하게 구성했으면 캐시를 제거해야 할 때(예: applicationDidReceiveMemoryWarning
또는 닫을 때 UIWebView
) 다음을 수행합니다.[[NSURLCache sharedURLCache] removeAllCachedResponses];
메모리가 복구된 것을 볼 수 있습니다. 나는 이 문제에 대해 여기에서 블로그를 작성했습니다: http://twobitlabs.com/2012/01/ios-ipad-iphone-nsurlcache-uiwebview-memory-utilization/다음을 수행하여 캐싱을 비활성화할 수 있습니다.
NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:0 diskCapacity:0 diskPath:nil]; [NSURLCache setSharedURLCache:sharedCache]; [sharedCache release];
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Google 애널리틱스 쿠키 및 양식 개인 정보를 Firebase DB에서 연결하는 샘플 양식MA 도구에는 추적 기능이 있으며 주로 양식 전환, 로그인 및 이메일 URL 클릭 시 쿠키가 리드 데이터와 연결됩니다. 이번에는 이러한 MA 툴과 마찬가지로 양식의 입력 데이터와 쿠키 정보를 연결하여 DB에 축적시키...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.