visionOS 2 full immersive space permission change?

Does visionOS 2 still prompt the user with a permission alert when a full immersive space is presented?

In visionOS 1, the first time an app presented an immersive space, the user was prompted with an alert to grant permission. openImmersiveSpace would return an error code if the user opted not to grant permission. In visionOS 1, it was important to handle this case correctly.

In visionOS 1, the Settings > Developer menu had an option to reset the immersive user's space permission prompting state so developers could test this interaction flow.

In visionOS 2, I no longer see the full immersive space permissions alert. I can't remember if I saw it once, the first time visionOS 2.0 beta was installed, or if I never saw it at all. The Settings > Developer menu no longer has an option to reset the permission prompting state. I can't find any way to test the interaction flow in my app to make sure that it will work correctly for users.

Does visionOS 2 no longer ask for full immersive space permission at all? I can't find this change documented anywhere.

If visionOS 2 does prompt the user for permission, is there any way to reproduce and test this interaction flow so I can make sure my app handles it correctly?

Thanks for taking the time to answer this question.

Answered by Vision Pro Engineer in 796531022

Hi @drewolbrich ,

visionOS 2 doesn't prompt the user with the same alert at visionOS 1 to reduce friction. A notice will periodically show, but the system will control that, so you don't need to worry about it!

If you'd like to test it out, if you have a device you can try archiving your app for debugging and then installing it on your device (or through TestFlight). Then, use the immersive space for a while and test out when/if the notice shows.

Accepted Answer

Hi @drewolbrich ,

visionOS 2 doesn't prompt the user with the same alert at visionOS 1 to reduce friction. A notice will periodically show, but the system will control that, so you don't need to worry about it!

If you'd like to test it out, if you have a device you can try archiving your app for debugging and then installing it on your device (or through TestFlight). Then, use the immersive space for a while and test out when/if the notice shows.

I agree it's a welcome change. The user experience is much better this way.

Since I updated my device to visionOS 2 beta, I've installed my app via TestFlight multiple times, and I don't think I've seen the notice you described except once, immediately after I first installed visionOS 2 beta. So, it appears this is not something I can easily test without reinstalling visionOS 2.

Also, since I no longer have visionOS 1 installed, there's now no easy way to test the original visionOS 1 immersive space permission alert either. The visionOS 1 simulator has never supported presentation of the immersive space permission alert, so that's not an option.

This is all unfortunate, but thank you for responding. It's helpful to know I'm not overlooking something obvious.

I don't know yet if this is reproducible, but I deleted my app, reinstalled it via TestFlight using visionOS 2.0 beta 4, presented a full immersive space in the app, and then I saw the Stay Aware of Your Surroundings alert.

So, that is a possible means of reproducing the new visionOS 2 full immersive space behavior.

visionOS 2 full immersive space permission change?
 
 
Q