SFSafariViewController is empty if presentation is delayed

Originator:an00na
Number:rdar://22972440 Date Originated:05-Oct-2015 10:59 AM
Status:Behaves as Intended Resolved:
Product:iOS SDK Product Version:9.0
Classification:Serious Bug Reproducible:Always
 
Summary:
SFSafariViewController is empty if presentation is delayed after creation by some time.

Steps to Reproduce:
1. Launch sample app.
2. Tap Open Web to see empty SFSafariViewController. Console log shows there are not subviews in SFSafariViewController.view.
3. Uncomment prepareWeb() below FIXME in ViewController.swift. Repeat 1~2 to see the correct behavior.

Expected Results:
SFSafariViewController should work normally if it is created first and then presented later. Some code logic ends up like this.

Sample code:
http://cl.ly/0O2W2C0l2l1F

Comments

Apple Developer Relations10-Feb-2016 04:07 PM

Engineering has provided the following feedback regarding this issue:

This is done to ensure SafariViewController can’t be used for loading content offscreen.


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!