У меня хорошо работает приложение, и оно использует локальные уведомления.
Я решил интернационализировать приложение сейчас, чтобы все работало нормально, кроме уведомлений, которые были установлены на языке перед сменой языка на устройстве.
Я заполняю сообщения в уведомлении из массива, который содержит локализованные строки, поэтому я подумал, что при изменении пользователем языка устройства строка в уведомлении также изменится, но я ошибся.
Как лучше всего решить эту проблему? Должен ли мой текст NSString быть также NSLocalizationString?
Мой код уведомления:
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
if (localNotif == nil)
return;
localNotif.fireDate = [alertTimes objectAtIndex:i];
localNotif.timeZone = [NSTimeZone defaultTimeZone];
NSString *text = [alertText objectAtIndex:i];
// Notification details
localNotif.alertBody = text;
// Set the action button
localNotif.alertAction = @"View";
localNotif.soundName = UILocalNotificationDefaultSoundName;
localNotif.applicationIconBadgeNumber = 1;
// Specify custom data for the notification
NSDictionary *infoDict = [NSDictionary dictionaryWithObject:@"someValue" forKey:@"someKey"];
localNotif.userInfo = infoDict;
// Schedule the notification
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
[localNotif release];