Question: Couldn't find any information regarding this... if I launch a `SKStoreProductViewController` instance from within my app, feeding it the iTunes URL of that app, does it allow for app updates? In other words I'd like to have an "Update" button within my app that shows a `SKStoreProductViewController` and allows the user to update the app from there.

This is hard to verify as `SKStoreProductViewController` is running a "sandboxed" version of the App Store, and that I'm not sure what determines whether it shows the "Open" or "Update" button.

Answer: 
Interestingly, I tried the same for my own app, where I tried to show my app's ID inside the SKStoreProductViewController, by detecting an earlier version of the app. 
The screen was visible, the update button was there, HOWEVER, clicking on update, and still remaining in the app's context made SKStore throw an error "Cannot download at this time".
However, I haven't tried immediately exiting the app after clicking on update should work

Its probably because an app must be exited before an update can be performed?
Yes, I implemented `SKStoreProductViewController` in a test app, and loaded an app that was already installed on my device. The class showed the "Open" button, and when the button was tapped, the device switched into the other app. I don't have any app updates available, but the class behavior must be the same. As the button changes from "Buy" to "Open," we know that its behavior is dynamic and that app updates are possible.

![enter image description here](https://i.stack.imgur.com/6dlBS.png)