applicationDidEnterBackground:未被调用
问题描述:
我正在为iPhone创建视频编辑应用程序。applicationDidEnterBackground:未被调用
当用户设置视频编辑并开始渲染时,显然需要时间。当用户按下主页按钮时,应用程序被最小化,但渲染仍然继续,并且applicationDidEnterBackground:
不会被调用,除非渲染过程完成。
答
你可以发布执行渲染的代码吗?
如果这是一个需要花费大量时间完成的阻塞调用,并且您正在主runloop中执行此操作,则会堵塞运行循环。您的渲染代码需要在调用applicationDidEnterBackground
之前完成,如果这需要太长时间,则iOS将简单地终止您的应用程序。 IT也会冻结你绝对不想要的UI。
最可能的解决方案是将您的渲染代码移动到后台线程,但这取决于您在做什么。
尝试applicationWillResignActive – jimpic
我认为他们都在同一个线程。并且只有在很短的时间内cpu空闲时才会调用回调。 –
我也尝试了applicationWillResignActive,但它也没有被调用... –