在我的应用中,用户可以访问链接。我使用应用内浏览器。但是当用户访问该站点时,内存消耗从25MB增加到50MB,即使用户关闭浏览器或返回上一屏幕也不会减少。
以下是我用来打开浏览器的简单代码:
AppMainBrowserViewController *mainBrowser = [[AppMainBrowserViewController alloc] initWithNibName:@"AppMainBrowserViewController" bundle:nil];
mainBrowser.urlString = urlString;
[self.navigationController pushViewController:mainBrowser animated:YES];
在我的AppMainBrowserViewController
:
if ([InternetDetector isNetAvailable]) {
if (self.processingIndicatorAlertView == Nil) {
[self showIndicatorView];
}
//Request
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:self.urlString]];
[self.mainWebView loadRequest:request];
} else {
UIAlertView *errorAlert = [[UIAlertView alloc] initWithTitle:ALERT_TITLE_MSG message:INTERNET_NOT_FOUND_MSG delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[errorAlert show];
}
我哪里错了?
答案 0 :(得分:0)
最有可能的原因是NSURLCache
的缓存。在启动应用程序内浏览器之前尝试将缓存设置为0:
int cacheSizeMemory = 0;
int cacheSizeDisk = 0;
NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:cacheSizeMemory diskCapacity:cacheSizeDisk diskPath:@"nsurlcache"];
[NSURLCache setSharedURLCache:sharedCache];