1// Signature format: 4.0 2package androidx.security.state { 3 4 public class SecurityPatchState { 5 ctor public SecurityPatchState(android.content.Context context); 6 ctor public SecurityPatchState(android.content.Context context, optional java.util.List<java.lang.String> systemModulePackageNames); 7 ctor public SecurityPatchState(android.content.Context context, optional java.util.List<java.lang.String> systemModulePackageNames, optional androidx.security.state.SecurityStateManagerCompat? customSecurityStateManagerCompat); 8 ctor public SecurityPatchState(android.content.Context context, optional java.util.List<java.lang.String> systemModulePackageNames, optional androidx.security.state.SecurityStateManagerCompat? customSecurityStateManagerCompat, optional String? vulnerabilityReportJsonString); 9 method public final boolean areCvesPatched(java.util.List<java.lang.String> cveList); 10 method public static final androidx.security.state.SecurityPatchState.SecurityPatchLevel getComponentSecurityPatchLevel(String component, String securityPatchLevel); 11 method public androidx.security.state.SecurityPatchState.SecurityPatchLevel getDeviceSecurityPatchLevel(String component); 12 method public java.util.Map<androidx.security.state.SecurityPatchState.Severity,java.util.Set<java.lang.String>> getPatchedCves(String component, androidx.security.state.SecurityPatchState.SecurityPatchLevel spl); 13 method public java.util.List<androidx.security.state.SecurityPatchState.SecurityPatchLevel> getPublishedSecurityPatchLevel(String component); 14 method @RequiresApi(26) public static final android.net.Uri getVulnerabilityReportUrl(optional android.net.Uri serverUrl); 15 method public final boolean isDeviceFullyUpdated(); 16 method @WorkerThread public final void loadVulnerabilityReport(String jsonString); 17 field public static final String COMPONENT_KERNEL = "KERNEL"; 18 field public static final String COMPONENT_SYSTEM = "SYSTEM"; 19 field public static final String COMPONENT_SYSTEM_MODULES = "SYSTEM_MODULES"; 20 field public static final androidx.security.state.SecurityPatchState.Companion Companion; 21 field public static final java.util.List<java.lang.String> DEFAULT_SYSTEM_MODULES; 22 field public static final String DEFAULT_VULNERABILITY_REPORTS_URL = "https://storage.googleapis.com/osv-android-api"; 23 } 24 25 public static final class SecurityPatchState.Companion { 26 method public androidx.security.state.SecurityPatchState.SecurityPatchLevel getComponentSecurityPatchLevel(String component, String securityPatchLevel); 27 method @RequiresApi(26) public android.net.Uri getVulnerabilityReportUrl(optional android.net.Uri serverUrl); 28 property public static String COMPONENT_KERNEL; 29 property public static String COMPONENT_SYSTEM; 30 property public static String COMPONENT_SYSTEM_MODULES; 31 property public java.util.List<? extends java.lang.String> DEFAULT_SYSTEM_MODULES; 32 property public static String DEFAULT_VULNERABILITY_REPORTS_URL; 33 } 34 35 public static final class SecurityPatchState.DateBasedSecurityPatchLevel extends androidx.security.state.SecurityPatchState.SecurityPatchLevel { 36 ctor public SecurityPatchState.DateBasedSecurityPatchLevel(int year, int month, int day); 37 method public int compareTo(androidx.security.state.SecurityPatchState.SecurityPatchLevel other); 38 method public static androidx.security.state.SecurityPatchState.DateBasedSecurityPatchLevel fromString(String value); 39 method public int getDay(); 40 method public int getMonth(); 41 method public int getYear(); 42 field public static final androidx.security.state.SecurityPatchState.DateBasedSecurityPatchLevel.Companion Companion; 43 } 44 45 public static final class SecurityPatchState.DateBasedSecurityPatchLevel.Companion { 46 method public androidx.security.state.SecurityPatchState.DateBasedSecurityPatchLevel fromString(String value); 47 } 48 49 public static final class SecurityPatchState.GenericStringSecurityPatchLevel extends androidx.security.state.SecurityPatchState.SecurityPatchLevel { 50 ctor public SecurityPatchState.GenericStringSecurityPatchLevel(String patchLevel); 51 method public int compareTo(androidx.security.state.SecurityPatchState.SecurityPatchLevel other); 52 } 53 54 public abstract static class SecurityPatchState.SecurityPatchLevel implements java.lang.Comparable<androidx.security.state.SecurityPatchState.SecurityPatchLevel> { 55 ctor public SecurityPatchState.SecurityPatchLevel(); 56 method public abstract String toString(); 57 } 58 59 public enum SecurityPatchState.Severity { 60 enum_constant public static final androidx.security.state.SecurityPatchState.Severity CRITICAL; 61 enum_constant public static final androidx.security.state.SecurityPatchState.Severity HIGH; 62 enum_constant public static final androidx.security.state.SecurityPatchState.Severity LOW; 63 enum_constant public static final androidx.security.state.SecurityPatchState.Severity MODERATE; 64 } 65 66 public static final class SecurityPatchState.VersionedSecurityPatchLevel extends androidx.security.state.SecurityPatchState.SecurityPatchLevel { 67 ctor public SecurityPatchState.VersionedSecurityPatchLevel(int majorVersion, int minorVersion, optional int buildVersion, optional int patchVersion); 68 method public int compareTo(androidx.security.state.SecurityPatchState.SecurityPatchLevel other); 69 method public static androidx.security.state.SecurityPatchState.VersionedSecurityPatchLevel fromString(String value); 70 method public int getBuildVersion(); 71 method public int getMajorVersion(); 72 method public int getMinorVersion(); 73 method public int getPatchVersion(); 74 field public static final androidx.security.state.SecurityPatchState.VersionedSecurityPatchLevel.Companion Companion; 75 } 76 77 public static final class SecurityPatchState.VersionedSecurityPatchLevel.Companion { 78 method public androidx.security.state.SecurityPatchState.VersionedSecurityPatchLevel fromString(String value); 79 } 80 81 public class SecurityStateManagerCompat { 82 ctor public SecurityStateManagerCompat(android.content.Context context); 83 method public android.os.Bundle getGlobalSecurityState(optional String moduleMetadataProviderPackageName); 84 field public static final androidx.security.state.SecurityStateManagerCompat.Companion Companion; 85 field public static final String KEY_KERNEL_VERSION = "kernel_version"; 86 field public static final String KEY_SYSTEM_SPL = "system_spl"; 87 field public static final String KEY_VENDOR_SPL = "vendor_spl"; 88 } 89 90 public static final class SecurityStateManagerCompat.Companion { 91 property public static String KEY_KERNEL_VERSION; 92 property public static String KEY_SYSTEM_SPL; 93 property public static String KEY_VENDOR_SPL; 94 } 95 96} 97 98