Wallpaper Changes = Configuration Changes?

UPDATE 2021-10-31: See the next post for the resolution to what is going on here.

This Stack Overflow question pointed out an interesting problem with the shipping Android 12 release: changing wallpaper results in an effect that feels a lot like a configuration change.

Specifically:

  • Start an app

  • Use system HOME navigation to return to the home screen

  • Change your wallpaper

  • Return to the app… and the activity will be destroyed and recreated

As the person who asked the SO question suggests, this feels like it is tied to Material You. I can see perhaps having a configuration change for this scenario, for apps that want to react to the new colors stemming from the new wallpaper.

However, at the same time, this does not seem to respect any android:configChange values, even the undocumented ones.

🤔

I can see a few possibilities for what is going on:

  • This is a configuration change, and there is an android:configChanges value that we can use, but that value did not make it into the documentation or the spots in the source code that I checked

  • This is a configuration change, but Google elected not to have an android:configChanges value for it

  • This is not a configuration change, but something that behaves a bit like one

For apps that rely upon avoiding the automatic destroy/recreate cycle of configuration changes, whatever this is can cause some serious problems.

If you have some insights as to what is going on here, post an answer, add a useful comment, or just reach out!.