2013-07-23 71 views
3

我在,我有當「如果你可以睡」應用打開相機在iPhone

https://itunes.apple.com/us/app/sleep-if-u-can-alarm-forces/id609598558?mt=8

我無法通知看起來就像打開相機的應用程序工作在本地的通知分析應用程序,如果它真的做它所說的,因爲它是付費應用程序。

我的第一個擔心是,它是可行的或不適用於iPhone,它適用於android。如果可行,如何實現。

任何幫助,將不勝感激。

+0

「...因爲它是付費應用程序。」不值得1.99美元來看看? – woz

+0

任何想法如何這個應用程序顯示通知「這個應用程序將不會工作,如果終止」就在它被終止後。請幫助。 – Swati

回答

1

在安排本地通知時,請添加一些信息作爲userInfo屬性。 像這樣:

UILocalNotification *n = [UILocalNotification new]; 
n.alertBody = @"Some Alert Text. Take a picture!"; 
n.userInfo = [[NSDictionary alloc] initWithObjectsAndKeys:@YES, @"openCamera", nil]; 
n.fireDate = [NSDate dateWithTimeIntervalSinceNow:60]; 
[[UIApplication sharedApplication] scheduleLocalNotification:n]; 

如果您的應用程序仍在運行,當用戶點擊本地通知,該application: didReceiveLocalNotification:消息將被髮送到你的AppDelegate。從那裏,你可以讀出用戶信息:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { 
    if ([[notification.userInfo objectForKey:@"openCamera"] isEqual: @YES]) { 
     // Do what is needed to open your camera 
    } 
} 

如果您的應用程序沒有運行,application: didFinishLaunchingWithOptions:將被調用。在此方法中,您可以讀出啓動選項中的通知並觸發您所定義的動作,如下所示:

UILocalNotification *n = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey]; 

if (n) { 
    [self application:application didReceiveLocalNotification:n]; 
}