Allow transparent third party apps (ie, enable UIApplicationIsOpaque in Info.plist)

Originator:me
Number:rdar://31764849 Date Originated:21-Apr-2017
Status:Open Resolved:
Product:iOS + SDK Product Version:iOS 10.3
Classification:New Feature Reproducible:Always
 
Summary:
Certain system apps, such as Safari and Music, and even official Apple apps delivered via the App Store, like iTunes Remote are ‘transparent’ where the user’s wallpaper is visible behind the app content. In some apps, the user’s wallpaper is untouched, and in others the wallpaper is blurred.

Since iOS 7, the design language of iOS has been one about indicating contextual layers, and nothing can drive that concept home further than letting users configure the look and feel of the apps they use with the wallpaper they choose.

This feature seems to be enabled in Apple apps via the Info.plist key ‘UIApplicationIsOpaque’. In early versions of iOS 7, this key was enabled for third party apps but was promptly disabled and has remained as such until present.

Steps to Reproduce:
1) Create a new app project.
2) In the root view controller, set the view’s background color to ‘clear’.
3) Set UIApplicationIsOpaque -> NO in the app Info.plist.
4) Compile and run the app.

Expected Results:
The user’s wallpaper should be visible in the background of the running app.

Actual Results:
The background is simply black.

Version:
iOS 10.3

Notes:
If security or privacy is a concern, an effective compromise would be to require the developer choose one of the UIVisualEffect blur styles that will be applied to the background content, so the wallpaper would always be sufficiently obfuscated.

Configuration:
Developer Environment: Xcode 8.3.2, macOS Sierra 10.12.4

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!