几天前,我在SO上发现了一个很好的片段来测试内存警告,只需每隔10秒发送一次UIApplicationDidReceiveMemoryWarningNotification通知.
我真的很喜欢这个想法并采用它只在应用程序切换到后台时发出通知,因为它可以更容易清理一些内存,因为每个UIViewController都会监听此通知(并执行一些内存清理,我也受益从).
由于我是一个懒惰的程序员,我想知道Apple是否允许这种技巧.
从技术上讲,这不是私有的API使用,我甚至怀疑他们在测试期间发现了这些东西,但是,我并不是100%肯定这一点.我正在使用的代码如下所示:
- (void)applicationWillResignActive:(UIApplication *)application { // Do some other stuff,unrelated to the question [[NSNotificationCenter defaultCenter] postNotificationName:UIApplicationDidReceiveMemoryWarningNotification object:application]; }
解决方法
我在我的App iFerien Deluxe中做了同样的事情,它经历了批准过程没有任何问题. 我个人认为,这对Apple来说是一个问题. 但是在我当前的应用程序中,我试图避免这种情况,因为它看起来有点hacky,因为你最好不得不手动释放applicationWillResignActive中的内存.