public boolean mayLaunchUrl(Uri url, Bundle extras, List<Bundle> otherLikelyBundles) {
        addIdToBundle(extras);
        try {
            return mService.mayLaunchUrl(mCallback, url, extras, otherLikelyBundles);
        } catch (RemoteException e) {
            return false;
        }
    }
Tells the browser of a likely future navigation to a URL.
The most likely URL has to be specified first. Optionally, a list of
other likely URLs can be provided. They are treated as less likely than
the first one, and have to be sorted in decreasing priority order. These
additional URLs may be ignored.
All previous calls to this method will be deprioritized.

@param url                Most likely URL.
@param extras             Reserved for future use.
@param otherLikelyBundles Other likely destinations, sorted in decreasing
                          likelihood order. Inside each Bundle, the client should provide a
                          {@link Uri} using {@link CustomTabsService#KEY_URL} with
                          {@link Bundle#putParcelable(String, android.os.Parcelable)}.
@return                   true for success.
customtabs/src/android/support/customtabs/CustomTabsSession.java