ios - UIWebView 在加载 PDF 文件时没有释放内存

标签 ios objective-c memory-management uiwebview

I am loading the pdf file (sizes: 15 MB) in UIWebView.

// If it is found, show it
[self.webView loadData:pdfData
              MIMEType:@"application/pdf"
      textEncodingName:@"UTF-8"
               baseURL:nil];

问题是,当我多次加载文件时,RAM 使用率会升高,并且应用程序会在某个时刻崩溃。当我弹出 View Controller 时,占用的 ram 没有得到释放。

最佳答案

只需在您的代码中添加三行,然后检查

-(void) dealloc
{
    [self.webview cleanForDealloc];
    self.webview = nil;
    [super dealloc];

}

更新:

当我删除 View Controller 时调用下面的方法。

-(void)webViewUnload {

    [self.webView loadHTMLString:@"" baseURL:nil];
    [self.webView stopLoading];
    [self.webView setDelegate:nil];
    [self.webView removeFromSuperview];

    [[NSURLCache sharedURLCache] removeAllCachedResponses];
    [[NSURLCache sharedURLCache] setDiskCapacity:0];
    [[NSURLCache sharedURLCache] setMemoryCapacity:0];
}

关于ios - UIWebView 在加载 PDF 文件时没有释放内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51037201/

相关文章:

c++ - 动态内存管理场景

c - 在标准 C 中使用 char 数组存储多种数据类型

ios - 没有 JPG 中介的 captureStillImageAsynchronouslyFromConnection

ios - FBSDKLoginButton 怪异的背景

objective-c - 如何检索以下处理器统计信息?

ios - '-[UITableViewController loadView] 加载了 "OG7-5c-Gm7-view-xGh-Gb-9hr"nib 但没有获得 UITableView。

ios - 基于字符串的动态UILabel

ios - startMonitoringSignificantLocationChanges 没有立即开始

IOS CoreData,使用哪个 NSManagedObjectContextConcurrencyType,为什么?

ios - 这段代码的内存管理问题是什么?