code: public void browserSwitch(int requestCode, Intent intent) {
          if (requestCode == Integer.MIN_VALUE) {
              BrowserSwitchResult result = BrowserSwitchResult.ERROR
                      .setErrorMessage("Request code cannot be Integer.MIN_VALUE");
              onBrowserSwitchResult(requestCode, result, null);
              return;
          }
  
          if (!isReturnUrlSetup()) {
              BrowserSwitchResult result = BrowserSwitchResult.ERROR
                      .setErrorMessage("The return url scheme was not set up, incorrectly set up, " +
                              "or more than one Activity on this device defines the same url " +
                              "scheme in it's Android Manifest. See " +
                              "https://github.com/braintree/browser-switch-android for more " +
                              "information on setting up a return url scheme.");
              onBrowserSwitchResult(requestCode, result, null);
              return;
          } else if (availableActivities(intent).size() == 0) {
              BrowserSwitchResult result = BrowserSwitchResult.ERROR
                      .setErrorMessage(String.format("No installed activities can open this URL: %s", intent.getData().toString()));
              onBrowserSwitchResult(requestCode, result, null);
              return;
          }
  
          mRequestCode = requestCode;
          mContext.startActivity(intent);
      }
docs: Open a browser or <a href="https://developer.chrome.com/multidevice/android/customtabs">Chrome Custom Tab</a>
  with the given intent.
  
  @param requestCode the request code used to differentiate requests from one another.
  @param intent an {@link Intent} containing a url to open.