1. NSNumber对象赋值NSString会报错。[__NSCFNumber isEqualToString:]; unrecognized selector sent to instance 0x9f59530
2. NSNumber转成NSString可以调用description方法,[responseObject[@"status"] description];
3. 如果刷新成功之后,在刷新成功之后就清空提醒消息数字。
4. 默认加到runloop,的模式修改一下,CommonModel就可以凑出时间做其他的事件。
5. 进入后台定时器就暂停工作了。要想让程序进入后台的时候也想做一些事情的时候,app delegate里-(void)applicationDidEnterBackground:(UIApplication *)application; //当app进入后台时调用,可以让程序进入后台运行状态,定时器,多媒体操作。
6. 后台暂停状态:停止一切动画、定时器、多媒体、联网操作、很难再做其他的操作了。
7. 后台运行状态:进入后台的调用方法,[application beginBackgroundTaskWithExpirationHandler:^{ // }];// 向操作系统申请后台运行的资格,能维持多久,是不确定的。
开发代码:
/**
* 当app进入后台时调用
*/
- (void)applicationDidEnterBackground:(UIApplication *)application
{
/**
* app的状态
* 1.死亡状态:没有打开app
* 2.前台运行状态
* 3.后台暂停状态:停止一切动画、定时器、多媒体、联网操作,很难再作其他操作
* 4.后台运行状态
*/
// 向操作系统申请后台运行的资格,能维持多久,是不确定的
UIBackgroundTaskIdentifier task = [application beginBackgroundTaskWithExpirationHandler:^{
// 当申请的后台运行时间已经结束(过期),就会调用这个block
// 赶紧结束任务
[application endBackgroundTask:task];
}];
// 在Info.plst中设置后台模式:Required background modes == App plays audio or streams audio/video using AirPlay
// 搞一个0kb的MP3文件,没有声音
// 循环播放
// 以前的后台模式只有3种
// 保持网络连接
// 多媒体应用
// VOIP:网络电话
}
网友评论