1

I am localizing an application for iOS. I want to know how to handle the setting change WHEN the app is running.

I.e:

  1. I have english selected as language, and start my app.
  2. The user go over to settings and change language to Russian on the phone.
  3. The user goes back to my app.

What do I need to do? Is there any notification that I can listen to or anything? Or will all apps just get restarted when there is such change?

Thanks.

EDIT: As it seems as if the app gets restarted. As I wrote in my comment below:

"But is it a hard reboot and app delegate init again, always? Is it like this on all iOS-versions? etc?"

Can I assume and be sure that there's nothing left of my last instance of the app?

ullstrm
  • 9,812
  • 7
  • 52
  • 83

1 Answers1

2

Maybe you do not need to worry about that, system will restart your application after you change the language. Try it!

KudoCC
  • 6,912
  • 1
  • 24
  • 53
  • Yes, it seems as if the app gets restarted. But is it a hard reboot and app delegate init again, always? Is it like this on all iOS-versions? etc? – ullstrm Dec 06 '13 at 08:27
  • @Spoek I think it is on all iOS-versions. I have tested it on ios6.* and ios7.*. Apple did not notify app the user has changed the language, do they? So they handle it. Don't worry about it. :) – KudoCC Dec 06 '13 at 08:38
  • Ok, seems legit. :) The reason I need this is because I need to wipe my core database if there's another language localization. – ullstrm Dec 06 '13 at 10:34
  • It would be nice to support language change from phone settings without restarting the app, but verified that after a language change, the app is still automatically restarted in iOS 11.3.1 – Brett Drake May 13 '18 at 16:06