boolean isSupported()

in core-android/src/main/java/com/uber/sdk/android/core/auth/SsoDeeplink.java [183:207]


    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;
        }
    }