में स्थानीय अधिसूचनाएं फायरिंग नहीं कर रही हैं IOS 10 के लिए UNUserNotificationCenter
का उपयोग कर रहा हूं। परीक्षण के लिए, मैं वर्तमान समय से 10 सेकंड के लिए स्थानीय अधिसूचना सेट कर रहा हूं।आईओएस 10
यह है कि मैं क्या करने की कोशिश की है,
- (void)viewDidLoad {
[super viewDidLoad];
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center requestAuthorizationWithOptions:(UNAuthorizationOptionBadge | UNAuthorizationOptionSound | UNAuthorizationOptionAlert)
completionHandler:^(BOOL granted, NSError * _Nullable error) {
if (!error) {
NSLog(@"request succeeded!");
[self set10Notifs];
}
}];
}
-(void) set10Notifs
{
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"10.0")) {
#if XCODE_VERSION_GREATER_THAN_OR_EQUAL_TO_8
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian];
[calendar setTimeZone:[NSTimeZone localTimeZone]];
NSDateComponents *components = [calendar components:NSCalendarUnitTimeZone fromDate:[[NSDate date] dateByAddingTimeInterval:10]];
UNMutableNotificationContent *objNotificationContent = [[UNMutableNotificationContent alloc] init];
objNotificationContent.title = [NSString localizedUserNotificationStringForKey:@"Prayer!" arguments:nil];
objNotificationContent.body = [NSString localizedUserNotificationStringForKey:@"Time now"
arguments:nil];
objNotificationContent.sound = [UNNotificationSound defaultSound];
UNCalendarNotificationTrigger *trigger = [UNCalendarNotificationTrigger triggerWithDateMatchingComponents:components repeats:NO];
UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:@"Prayer"
content:objNotificationContent trigger:trigger];
UNUserNotificationCenter *userCenter = [UNUserNotificationCenter currentNotificationCenter];
[userCenter addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) {
if (!error) {
NSLog(@"Local Notification succeeded");
}
else {
NSLog(@"Local Notification failed");
}
}];
#endif
}
}
मैं लॉग देख सकते हैं "स्थानीय अधिसूचना सफल रहा"। लेकिन स्थानीय अधिसूचना डिवाइस में फायरिंग नहीं कर रही है।
AppDelegate में, मैं
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
center.delegate = self;
return YES;
}
- (void)userNotificationCenter:(UNUserNotificationCenter *)center
willPresentNotification:(UNNotification *)notification
withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler {
NSLog(@"Notification is triggered");
completionHandler(UNNotificationPresentationOptionBadge);
}
-(void)userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)())completionHandler{
NSLog(@"User Info : %@",response.notification.request.content.userInfo);
completionHandler();
}
क्या मैं गलत क्या किया जोड़ा? ऐप अधिसूचनाओं को क्यों नहीं निकाल दिया गया?
http://stackoverflow.com/questions/37807302/add-local-notification-in -ios10-swift-3? rq = 1 – Sanju
अपने डिवाइस का समय और ट्रिगरटाइम जांचें - http://stackoverflow.com/questions/39941778/how-to-schedule-a-local-notification-in-ios-10- विशेषण -c? rq = 1 – Sanju
क्या आपने एक्सकोड सेटिंग्स से पुश सूचनाएं सक्षम की हैं? – Stefan