Loading README.md +1 −0 Changes for README.md: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -49,6 +49,7 @@ More informations can be found [here](https://build.phonegap.com/plugins/331). #### Version 0.7.0 (not yet released) - [bugfix:] App throws an error on iOS if `message` is null. - [bugfix:] Removed extra line break on iOS if `title` is null or empty. - [bugfix:] Notification on iOS will be canceled if a new one with the same ID was added. #### Version 0.6.3 (12.12.2013) - [bugfix:] Black screen on Android. Loading src/ios/APPLocalNotification.m +31 −12 Changes for src/ios/APPLocalNotification.m: 31 added lines, 12 removed lines. Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ @interface APPLocalNotification (Private) // Entfernt die zur ID passende Meldung - (void) cancelNotificationWithId:(NSString*)notificationId; - (NSMutableDictionary*) repeatDict; // Alle zusätzlichen Metadaten der Notification als Hash - (NSDictionary*) userDict:(NSMutableDictionary*)options; Loading @@ -47,23 +49,49 @@ NSArray* arguments = [command arguments]; NSMutableDictionary* options = [arguments objectAtIndex:0]; UILocalNotification* notification = [self notificationWithProperties:options]; NSString* notificationId = [notification.userInfo objectForKey:@"id"]; [self cancelNotificationWithId:notificationId]; [[UIApplication sharedApplication] scheduleLocalNotification:notification]; }]; } /** * Entfernt den anhand der ID angegebenen Eintrag. * * @param {NSString} id Die ID der Notification * Entfernt die zur ID passende Meldung. */ - (void) cancel:(CDVInvokedUrlCommand*)command { [self.commandDelegate runInBackground:^{ NSArray* arguments = [command arguments]; NSString* notificationId = [arguments objectAtIndex:0]; [self cancelNotificationWithId:notificationId]; }]; } /** * Entfernt alle registrierten Einträge. */ - (void) cancelAll:(CDVInvokedUrlCommand*)command { [[UIApplication sharedApplication] cancelAllLocalNotifications]; } /** * Entfernt die zur ID passende Meldung. * * @param {NSString} id Die ID der Notification */ - (void) cancelNotificationWithId:(NSString*)notificationId { NSArray* notifications = [[UIApplication sharedApplication] scheduledLocalNotifications]; if (notificationId == (NSString*)[NSNull null] || [notificationId isEqualToString:@""]) { return; } for (UILocalNotification* notification in notifications) { NSString* id = [notification.userInfo objectForKey:@"id"]; Loading @@ -73,15 +101,6 @@ [[UIApplication sharedApplication] cancelLocalNotification:notification]; } } }]; } /** * Entfernt alle registrierten Einträge. */ - (void) cancelAll:(CDVInvokedUrlCommand*)command { [[UIApplication sharedApplication] cancelAllLocalNotifications]; } /** Loading Loading
README.md +1 −0 Changes for README.md: 1 added line, 0 removed lines. Original line number Diff line number Diff line Loading @@ -49,6 +49,7 @@ More informations can be found [here](https://build.phonegap.com/plugins/331). #### Version 0.7.0 (not yet released) - [bugfix:] App throws an error on iOS if `message` is null. - [bugfix:] Removed extra line break on iOS if `title` is null or empty. - [bugfix:] Notification on iOS will be canceled if a new one with the same ID was added. #### Version 0.6.3 (12.12.2013) - [bugfix:] Black screen on Android. Loading
src/ios/APPLocalNotification.m +31 −12 Changes for src/ios/APPLocalNotification.m: 31 added lines, 12 removed lines. Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ @interface APPLocalNotification (Private) // Entfernt die zur ID passende Meldung - (void) cancelNotificationWithId:(NSString*)notificationId; - (NSMutableDictionary*) repeatDict; // Alle zusätzlichen Metadaten der Notification als Hash - (NSDictionary*) userDict:(NSMutableDictionary*)options; Loading @@ -47,23 +49,49 @@ NSArray* arguments = [command arguments]; NSMutableDictionary* options = [arguments objectAtIndex:0]; UILocalNotification* notification = [self notificationWithProperties:options]; NSString* notificationId = [notification.userInfo objectForKey:@"id"]; [self cancelNotificationWithId:notificationId]; [[UIApplication sharedApplication] scheduleLocalNotification:notification]; }]; } /** * Entfernt den anhand der ID angegebenen Eintrag. * * @param {NSString} id Die ID der Notification * Entfernt die zur ID passende Meldung. */ - (void) cancel:(CDVInvokedUrlCommand*)command { [self.commandDelegate runInBackground:^{ NSArray* arguments = [command arguments]; NSString* notificationId = [arguments objectAtIndex:0]; [self cancelNotificationWithId:notificationId]; }]; } /** * Entfernt alle registrierten Einträge. */ - (void) cancelAll:(CDVInvokedUrlCommand*)command { [[UIApplication sharedApplication] cancelAllLocalNotifications]; } /** * Entfernt die zur ID passende Meldung. * * @param {NSString} id Die ID der Notification */ - (void) cancelNotificationWithId:(NSString*)notificationId { NSArray* notifications = [[UIApplication sharedApplication] scheduledLocalNotifications]; if (notificationId == (NSString*)[NSNull null] || [notificationId isEqualToString:@""]) { return; } for (UILocalNotification* notification in notifications) { NSString* id = [notification.userInfo objectForKey:@"id"]; Loading @@ -73,15 +101,6 @@ [[UIApplication sharedApplication] cancelLocalNotification:notification]; } } }]; } /** * Entfernt alle registrierten Einträge. */ - (void) cancelAll:(CDVInvokedUrlCommand*)command { [[UIApplication sharedApplication] cancelAllLocalNotifications]; } /** Loading