Google is quite dogmatic in saying that you'll burn in hell for accepting configuration changes yourself.
A configuration change is a
resource configuration change. Sure, if what has changed affects the selection of resources restarting is the easiest way to deal with it. If your app uses different layout xml for portrait and landscape you'll probably want to restart. Many apps don't use separate layout xml. Do you really need to restart just because a hardware DPAD became available?
Code:
{1.0 311mcc480mnc [en_US,de_DE,fr_FR] ldltr sw331dp w669dp h336dp 320dpi nrml long land finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1339, 720) mAppBounds=Rect(0, 0 - 1339, 720) mWindowingMode=fullscreen mActivityType=standard} s.331 spnnull gidbae0000000000000}
If I connect a clicker that -nav/h switches to dpad/h. Do I really have to restart?
Many of these I didn't say. So if somebody swaps a SIM card while my app is running it will be forced to restart!
- density
- fontScale
- keyboard
- keyboardHidden
- layoutDirection
- locale
- mcc
- mnc
- navigation
- orientation
- screenLayout
- screenSize
- smallestScreenSize
- touchscreen
- uiMode