Как красиво выйти из приложения для iPhone?
или "Как смоделировать событие нажатия кнопки домой?"
Мне нужно перезапустить приложение для iPhone, и я хочу, чтобы программа закрывалась, поэтому пользователю нужно будет только запустить его.
Если я просто используюexit(0)
некоторые изменения не будут сохранены, как если бы пользователь ушел, нажав кнопку «Домой»
Перезапуск необходим для смены языка.
Связанный код:
- (void)onChangeLanguage: (id)sender {
NSArray *lang = [NSArray arrayWithObjects:((Whatever *)sender).newLanguage, nil];
[[NSUserDefaults standardUserDefaults] setObject:lang forKey:@"AppleLanguages"];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *languages = [defaults objectForKey:@"AppleLanguages"];
NSString *currentLanguage = [languages objectAtIndex:0];
NSLog(@"Current language: %@", currentLanguage);
// ***
}
Если пользователь перезапустится с помощью кнопки «Домой», язык изменится.
Если// ***
заменяетсяexit(0)
, язык не изменится.