Commit bbe052aa by PC Dreams (Paulo Cristo) Committed by Sebastián Katzer

fix fireEvent for IOS 10

parent a744504c
...@@ -26,6 +26,8 @@ ...@@ -26,6 +26,8 @@
#import "UIApplication+APPLocalNotification.h" #import "UIApplication+APPLocalNotification.h"
#import "UILocalNotification+APPLocalNotification.h" #import "UILocalNotification+APPLocalNotification.h"
@import UserNotifications;
@interface APPLocalNotification () @interface APPLocalNotification ()
// Retrieves the application state // Retrieves the application state
...@@ -691,26 +693,50 @@ ...@@ -691,26 +693,50 @@
*/ */
- (void) fireEvent:(NSString*)event notification:(UILocalNotification*)notification - (void) fireEvent:(NSString*)event notification:(UILocalNotification*)notification
{ {
NSString* js; if (IsAtLeastiOSVersion(@"10.0")) {
NSString* params = [NSString stringWithFormat: UNMutableNotificationContent *content = [[UNMutableNotificationContent alloc] init];
@"\"%@\"", self.applicationState]; content.title = [NSString localizedUserNotificationStringForKey:notification.alertTitle arguments:nil];
content.body = [NSString localizedUserNotificationStringForKey:notification.alertBody
arguments:nil];
content.sound = [UNNotificationSound defaultSound];
/// 4. update application icon badge numberß
//content.badge = @([[UIApplication sharedApplication] applicationIconBadgeNumber] + 1);
// Deliver the notification in five seconds.
UNTimeIntervalNotificationTrigger *trigger = [UNTimeIntervalNotificationTrigger
triggerWithTimeInterval:1.f repeats:NO];
UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:@"FiveSecond"
content:content trigger:trigger];
/// 3. schedule localNotification
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) {
if (!error) {
NSLog(@"add NotificationRequest succeeded!");
}
}];
} else {
if (notification) { NSString* js;
NSString* args = [notification encodeToJSON]; NSString* params = [NSString stringWithFormat:
@"\"%@\"", self.applicationState];
params = [NSString stringWithFormat: if (notification) {
@"%@,'%@'", NSString* args = [notification encodeToJSON];
args, self.applicationState];
}
js = [NSString stringWithFormat: params = [NSString stringWithFormat:
@"cordova.plugins.notification.local.core.fireEvent('%@', %@)", @"%@,'%@'",
event, params]; args, self.applicationState];
}
if (deviceready) { js = [NSString stringWithFormat:
[self.commandDelegate evalJs:js]; @"cordova.plugins.notification.local.core.fireEvent('%@', %@)",
} else { event, params];
[self.eventQueue addObject:js];
if (deviceready) {
[self.commandDelegate evalJs:js];
} else {
[self.eventQueue addObject:js];
}
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment