应用程序不管在后台还是前台都会执行- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo
fetchCompletionHandler:(void
(^)(UIBackgroundFetchResult))completionHandler
那怎么在这个方法里判断应用程序在前台还是在后台呢?
[UIApplication sharedApplication].applicationState == UIApplicationStateActive
这是在前台
UIApplicationStateBackground 这是在后台
在AppDelegate中有如下几个方法, 用一个flag标记是否是前台
- (void)applicationDidEnterBackground:(UIApplication *)application
{
//程序进入后台
flag = NO;
}
- (void)applicationDidBecomeActive:(UIApplication *)application
{
//程序进入前台
flag = YES;
}