Je voudrais savoir comment je ( en tant que développeur) pouvez configurer des notifications locales de sorte qu'au moment où j'ai mis, mon application génère une notification d'alerte avec un message personnalisé...
Réponses
Trop de publicités?Voici un exemple de code pour LocalNotification qui a fonctionné pour mon projet.
Ce bloc de code dans AppDelegate fichier :
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[launchOptions valueForKey:UIApplicationLaunchOptionsLocalNotificationKey];
// Override point for customization after application launch.
return YES;
}
// This code block is invoked when application is in foreground (active-mode)
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
UIAlertView *notificationAlert = [[UIAlertView alloc] initWithTitle:@"Notification" message:@"This local notification"
delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
[notificationAlert show];
// NSLog(@"didReceiveLocalNotification");
}
Ce bloc de code .m fichier de n'importe quelle ViewController :
-(IBAction)startLocalNotification { // Bind this method to UIButton action
NSLog(@"startLocalNotification");
UILocalNotification *notification = [[UILocalNotification alloc] init];
notification.fireDate = [NSDate dateWithTimeIntervalSinceNow:7];
notification.alertBody = @"This is local notification!";
notification.timeZone = [NSTimeZone defaultTimeZone];
notification.soundName = UILocalNotificationDefaultSoundName;
notification.applicationIconBadgeNumber = 10;
[[UIApplication sharedApplication] scheduleLocalNotification:notification];
}
Le code ci-dessus de l'affichage d'une AlertView après l'intervalle de temps de 7 secondes lors de l'appuie sur le bouton qui se lie "startLocalNotification" Si l'application est en arrière-plan, puis il affiche BadgeNumber 10 et avec son de notification par défaut.
Dans appdelegate.m écrire le fichier suivants du code de applicationDidEnterBackground pour obtenir la notification locale
- (void)applicationDidEnterBackground:(UIApplication *)application
{
UILocalNotification *notification = [[UILocalNotification alloc]init];
notification.repeatInterval = NSDayCalendarUnit;
[notification setAlertBody:@"Hello world"];
[notification setFireDate:[NSDate dateWithTimeIntervalSinceNow:1]];
[notification setTimeZone:[NSTimeZone defaultTimeZone]];
[application setScheduledLocalNotifications:[NSArray arrayWithObject:notification]];
}
Voici une étape par étape tutoriel.
Bon tutoriel pour UILocalNotification
http://www.appcoda.com/ios-programming-local-notification-tutorial/