我的要求,我的應用程序得到通知,每10分鐘,並通知下做一些處理接收事件即使我關閉我的應用程序,從而爲我創建如下UILocalNotification代碼,只是爲了測試目的我在那裏設置通知聲音。在我關閉我的應用程序並進入設備主屏幕後,我只收到一次通知聲音,並沒有在我的程序中發出「didReceiveLocalNotification」事件。 通常情況下,通知顯示爲通知警報與某些機構,然後單擊「查看」按鈕,然後向我們的應用程序發送「didReceiveLocalNotification」事件方法。但我不想顯示任何通知警報,並且我的應用程序應該使用「didReceiveLocalNotification」事件方法作爲後臺進程調用。請告訴我如何通過UILocalNotification API解決我的問題?如果我的應用程序應該每隔10分鐘在後臺通知使用UILocalNotification是不可能的,那麼我還有什麼方法可以嘗試解決它?iPhone:問題與UILocalNotification流
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[self initLocalNotification : 600];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
-(void) initLocalNotification :(int) seconds {
// Notity after 10 * 60 seconds
NSDate *notificationDate = [NSDate dateWithTimeIntervalSinceNow:seconds];
if (notify)
notify = NULL;
notify = [ [UILocalNotification alloc] init ];
notify.fireDate = notificationDate;
//notify.applicationIconBadgeNumber = 1;
notify.soundName = UILocalNotificationDefaultSoundName;
notify.timeZone = [NSTimeZone defaultTimeZone];
//notify.alertBody = @"Local notification test";
notify.repeatInterval = kCFCalendarUnitDay;
NSDictionary *infoDict = [NSDictionary dictionaryWithObject:@"notifiValue" forKey:@"notifiKey"];
notify.userInfo = infoDict;
NSLog(@"Initiate notification in %d seconds", seconds);
// Schedule the notification
[[UIApplication sharedApplication] scheduleLocalNotification:notify];
[notify release];
}
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
NSLog(@"Notification triggerred..");
[[UIApplication sharedApplication] cancelAllLocalNotifications];
[ self initLocalNotification : 600 ];
}
謝謝!
嗨,非常感謝!如果需要顯示警報,我認爲我不能跟UILLocalnotification一起去。如果我想使用位置服務,它是如何工作的?我的應用程序可以設置一些時間間隔,並在那個時候收到通知來完成一些任務嗎?是否有任何教程或樣本需要通過? – Getsy 2011-04-03 20:53:13
隨着位置服務,您會在位置發生變化時收到通知,因此如果用戶呆在一個地方,您不會收到很多通知(特別是如果您僅註冊「重大位置更改」,則應該採取措施保存電池)。而應用程序將不得不提供一些位置服務給用戶,否則它會被拒絕。 – SVD 2011-04-03 23:32:27
噢!如果位置通知只有在手機上的位置發生變化時纔會收到通知,那麼它對我的目的不會有用!然後不知道如何在iOS開發中每隔一定的時間間隔實現我對背景通知的要求(即使當我的應用程序關閉時)? – Getsy 2011-04-04 05:24:00