Too Long; Didn't Read
Chrome Custom Tabs is the preferred option if you want to give users access to the web without sending them to another app. The biggest inconvenience that I’ve discovered is that the Custom Tab’s current URL is not sent back to the host application and retrieving it is not the most intuitive process. You can be up to running with a few lines of code. Retrieving the URL is possible with PendingIntent that starts our main activity. You can use a CustomTabs callback to determine when pages start and finish loading but the callback does not contain information about the actual URL.