收到内存警告?
Posted
技术标签:
【中文标题】收到内存警告?【英文标题】:Getting Receive memory warning? 【发布时间】:2015-08-21 09:00:41 【问题描述】:我正在尝试使用 ImagePickerController 从照片库中获取最长 30 秒的特定视频。
获得 URL 后,我将进入第二个视图以在 AVPlayer 中播放所选视频。
我收到“收到内存警告”。和 ""与 assetsd 的连接被中断或 assetsd 死了"。
如何解决此错误?有人可以帮帮我吗?
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
NSURL *videoURL= [info objectForKey:UIImagePickerControllerMediaURL];
NSURL *url = [info objectForKey:UIImagePickerControllerMediaURL];
AVAsset *asset = [AVAsset assetWithURL:url];
[picker dismissViewControllerAnimated:YES completion:^
Edition *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"EditionVC"];
vc.videoUrl=videoURL;
vc.asset=asset;
[self presentViewController:vc animated:YES completion:nil];
];
在第二个视图中播放视频。
self.avPlayerItem = [AVPlayerItem playerItemWithURL:self.videoUrl];
self.avPlayer = [AVPlayer playerWithPlayerItem:self.avPlayerItem];
[self.avPlayer play];
self.avPlayer.actionAtItemEnd = AVPlayerActionAtItemEndNone;
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playerItemDidPlayToEndTime:)
name:AVPlayerItemDidPlayToEndTimeNotification
object:self.avPlayerItem];
【问题讨论】:
你是如何解决这个问题的? 我为视频设置了较低的质量。picker.videoQuality=UIImagePickerControllerQualityTypeIFrame1280x720;
【参考方案1】:
您在 Instruments.app 中有内存分析工具 - 这将向您显示与您的应用中的分配相关的大量数据。
通过仪器检查应用程序-->内存分配
它将显示应用程序使用的所有内存,如果有任何泄漏,它将显示。
【讨论】:
我知道。 Cpu - 20%, Memory-56MB, DISk-0, Network-0, FPS-30以上是关于收到内存警告?的主要内容,如果未能解决你的问题,请参考以下文章
收到内存警告时 UICollectionView 维护的单元队列会发生啥?