Thanks for being a part of WWDC25!

How did we do? We’d love to know your thoughts on this year’s conference. Take the survey here

For a third year, no screenshot capability for immersive visionOS apps... here's a workaround?

Since only the user can take a screenshot using the Apple Vision Pro's top buttons, the only workaround available to an immersive app that needs a screenshot to document the user's creative interior design choices is

  1. ask the user to take a screenshot
  2. wait until the user taps a button indicating the screenshot has been taken
  3. then the app asks the user to select the screenshot when the app opens the PhotoPicker
  4. when the user presses Done, the screenshot is handed off to the app.

One wonders why there is no Apple Api for doing this in a simple privacy protective way such as:

  1. When called, the Apple api captures the screenshot in Apple secured memory
  2. The api displays the screenshot to the user with appropriate privacy warnings and asks if the user wants to a. share this screenshot with the app, or b. cancel, c. retake the screenshot
  3. If the user approves, the app receives the screenshot

FB17946994 filed

Hello @z3wind, thank you for your feedback and for submitting the feedback request! I understand you'd prefer an API solution for taking screenshots, but in lieu of that, I'd like to suggest some solutions that might unblock you:

  1. The RealityRenderer API provides mechanisms for rendering a RealityKit scene to a texture. You could programmatically add the user configured entities to a RealityRenderer instance, then produce an image file with those entities in frame that can be shared to you.

  2. Rather than a sending the screenshot, it might be possible to instead share a data file containing the user's configuration. This file would contain data describing which entities are instantiated and their transforms. You would then be able to recreate the user's configured space on your end, but without any potentially sensitive info that might be contained in a screenshot.

Thank you for your feedback!

Thank you for your response. I will look into the use of RealityRender, but it only partially addresses the need.

My application and others that involve interior design require that the design be evaluated in the environment where it will exist.

For example, my app “FrameIt Vision” (https://itunes.apple.com/app/id6472856422) allows users to frame, mat, and arrange images from Photos on their walls in the room where the arrangement will be displayed. The key advantage to a Vision Pro is its ability to design in the room where the picture will be displayed.

At the end of the design process, the designer must share the design quickly and easily with very non-technical people who are responsible for framing and installation. The best answer is to handoff an image (screenshot) that shows the creation in the environment where it will be installed. Any solution that excludes the installation premises is only a poor partial solution.

In regards to option 2. My app already exports Reality files. They are a poor partial solution, but the best that can be done today.

In addition, my app already provides a PDF report that lists the specifications of frames, mats and arrangements. Unfortunately, it is very difficult for most to grok dimensions, color names, and locations in a multipage report.

For a third year, no screenshot capability for immersive visionOS apps... here's a workaround?
 
 
Q