code: boolean isSupported(@NonNull FlowVersion flowVersion) {
          if (flowVersion == FlowVersion.REDIRECT_TO_SDK) {
              Intent redirectIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(redirectUri));
              redirectIntent.setPackage(activity.getPackageName());
              List<ResolveInfo> resolveInfoList = activity.getPackageManager().queryIntentActivities(
                      redirectIntent, PackageManager.MATCH_DEFAULT_ONLY);
              if (resolveInfoList.isEmpty()) {
                  return false;
              }
          }
  
          if (productFlowPriority.isEmpty()) {
              return appProtocol.isInstalled(activity, UBER, getSupportedAppVersion(UBER, flowVersion));
          } else {
              for (SupportedAppType supportedAppType : productFlowPriority) {
                  if (appProtocol.isInstalled(
                          activity,
                          supportedAppType,
                          getSupportedAppVersion(supportedAppType, flowVersion))) {
                      return true;
                  }
              }
              return false;
          }
      }
docs: Check if SSO deep linking is supported in this device.
  
  @param flowVersion specifies which client implementation to validate
  @return true if package name, minimum version, and redirect uri requirements for flowVersion are met