2012-01-05 54 views
0

每当您的应用程序首次发送本地通知到锁定屏幕时,您只需读取它们或按两次锁定按钮,即可看到带有两个滑块的列表:一个用于读取每个通知,另一个用于解锁。据我所知这是默认设置。 当然,我正在谈论锁定屏幕与背景中的应用程序。iOS5本地通知 - 刷卡或解锁

有什么办法可以改变“第一个”解锁屏幕通知行为,使“解锁”和通知的“读”滑块 - 不仅一个进入应用程序?

编辑:或者至少如果我知道哪个滑块被使用?似乎不太可能,但不会伤害要求;)

回答

1

不,你不能改变任何关于系统处理推送通知程序的方式。

只有滑块被用户使用时,才会打开您的应用程序。您可以通过- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions的本地通知检查您的应用程序是否已打开。只需检查是否有通知。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].applicationFrame]; 

    [self.window addSubview:self.tabBarController.view]; 
    [self.window makeKeyAndVisible]; 

    UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey]; 

    if (notification) { 
     [self performSelector:@selector(handleNotification:) withObject:notification afterDelay:0.1]; 
    } 

    return YES; 
} 

// Recieved notification when running 
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { 
    [self handleNotification:notification]; 
} 
- (void) handleNotification:(UILocalNotification *)notification { 
    // Handle the notification 
} 
+0

但我有一个应用程序已经在运行,所以我不认为这种方法是非常有帮助 - 我的意思是:我启动应用程序,那么一段时间后发送其首次触发两个通知滑块阅读和阅读 - 但!我想读取和解锁 – raistlin 2012-01-05 13:24:19

+0

当接收到通知后屏幕开启时,“解锁”滑块就是“读取”。并且在回到睡眠之后将再次读取“解锁”。没有什么可以改变的,这就是系统的工作原理。 – rckoenes 2012-01-05 14:09:15

+0

thx,它有很大的帮助:)我可以接受你的最后评论作为正确答案,或者我应该接受整个答案吗? – raistlin 2012-01-05 14:41:08