1

每当我坐在相机捕获屏幕上时,我的(前台)应用程序都会被 ios9 设备(ipad mini 3 A1599)驱逐。我看到这个

SpringBoard[54] <Warning>: Communications error: <OS_xpc_error: <error: 0x19d654af0> { count = 1, contents =
        "XPCErrorDescription" => <string: 0x19d654e50> { length = 22, contents = "Connection interrupted" }
    }>

不久前的“最终剪辑”体现在这些方面:

Sep 29 13:17:33 ipad-mini mediaserverd[25] <Notice>: '' (pid = 4278) setting DiscoveryMode = DiscoveryMode_None, currentDiscoveryMode = DiscoveryMode_None
Sep 29 13:17:33 ipad-mini CommCenter[75] <Notice>: Connection interrupted!
Sep 29 13:17:33 ipad-mini UserEventAgent[23] <Notice>: jetsam: kernel termination snapshot being created

设备/查看设备日志中没有崩溃 itunesconnect 中没有崩溃(似乎是 ios 9.0.1 之前的一个已知问题:iOS 9 用户当前未报告安装、会话和活动设备。这将很快得到解决在即将到来的 iOS 更新中。)

知道是什么导致了这些奇怪的“崩溃”吗?

在运行 9.0.1 的 iphone 6 上也有同样的问题

Sep 29 13:33:48 iPhone6minus yourId[465] <Warning>: Memory in use: 28 MB
Sep 29 13:33:49 iPhone6minus duetexpertd[481] <Warning>: Found bundle: file:///System/Library/DuetExpertCenter/Experts/AppPrediction.bundle/
Sep 29 13:33:49 iPhone6minus sharingd[194] <Error>: 13:33:49.078 : SDConnectionManager:: XPC connection invalidated
Sep 29 13:33:49 iPhone6minus ReportCrash[482] <Warning>: saved type '298' report (1 of max 25) as /var/mobile/Library/Logs/CrashReporter/JetsamEvent-2015-09-29-133348.ips

UPD 20150929:我已经追踪到 - (CGImageRef)CIContext::createCGImage:(CIImage *)image fromRect:(CGRect)fromRect

含义:当我调用 ios9 停止从设备启动应用程序时(并且性能飙升)。现在我需要的是找到一个(有效的)替代该调用的方法:=[

UPD 20151001:删除内存引用导致这显然不是与内存压力相关的驱逐(请参阅之前的更新)

4

1 回答 1

2

不是您的问题的答案,但在更新到 iOS 9 后我注意到一些非常糟糕的事情。我的应用程序捕获视频并使用 CIContext 过滤、组合和渲染视频帧。更新后CIContext像以前一样停止工作。现在我的应用程序在运行几秒钟后就崩溃了。正如我所看到的,这是因为一些内存过载,尤其是视频内存。我使用CIContext contextWithEAGLContext创建上下文,然后将过滤后的图像渲染到 CVPixelBuffer。

唯一能“帮助”避免内存问题的是每次我想渲染帧时创建和释放上下文,这当然太昂贵了。(无弧)

所以在他们修复它之前,我的应用程序实际上已经死了。Brad Larson 的 GPUImage 也是如此,RosyWriter 也是如此——Apple 自己的例子。

于 2015-10-03T10:49:07.047 回答