When your App is ready to share, publishing is how you make it real. A published version is the version of your App that is live and visible to your end users.
You'll find the Publish button in the upper-right-hand corner of your builder window. Click it, and that version of your App becomes the one your users access. One detail worth knowing: publishing captures your App's front end and configuration. It does not include changes to the underlying stories or workflows, which are managed separately.

UI location of the Publish button to publish an App.
Share your App with a custom URL
Once your App is published, you'll want people to find and open it easily. By default, your App is served at your tenant's dedicated Apps address using a unique identifier. To make it easier to recognize and share, you can set a custom URL from the share panel, giving your App a clean, memorable address. Best of all, any existing links that use the original identifier will keep working and automatically redirect to your new custom URL, so you can set or change it without disruption.

UI location to set a custom URL for an App.
Unpublish an App
Sometimes you need to take your App entirely out of your users' hands. If you spot a significant issue, you can unpublish your App to move it back to a draft state, rather than leaving a broken experience live. It's the natural counterpart to publishing: one puts your App out into the world, the other pulls it back so you can work on it privately again.

UI location to unpublish an App.