鉴于使用相机在WKWebView
实例拍摄照片中运行基于网络的应用。
<input type="file" capture="camera"/>
的第一个版本。UIImagePickerController
的第二个版本,然后将图像传输到Web视图。拍摄约50张照片后,两个版本会导致WkWebView
被白色矩形替换。
首先猜测是JavaScript中的内存泄漏,但即使不处理图像数据 >>,测试也会导致崩溃,当Web视图几乎为空时当UIImagePickerController
未连接到网络视图 >>时,甚至。
iOS应用程序的分析显示内存使用量没有显着增加,但其他进程(如XCode调试器中所列)在拍照后立即显示内存使用量约为100 MB的短峰值。
我理解WKWebView
是在一个单独的进程中运行的,当资源很短时,它会被iOS杀死,但这也会在更新的硬件上发生。
iOS如何决定杀死Web视图以及如何在拍照时阻止它?