Loading core/api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -13223,6 +13223,7 @@ package android.content.pm { field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SharedLibraryInfo> CREATOR; field public static final int TYPE_BUILTIN = 0; // 0x0 field public static final int TYPE_DYNAMIC = 1; // 0x1 field public static final int TYPE_SDK = 3; // 0x3 field public static final int TYPE_STATIC = 2; // 0x2 field public static final int VERSION_UNDEFINED = -1; // 0xffffffff } core/java/android/content/pm/PackageManager.java +5 −5 Original line number Diff line number Diff line Loading @@ -697,7 +697,7 @@ public abstract class PackageManager { MATCH_DISABLED_COMPONENTS, MATCH_DISABLED_UNTIL_USED_COMPONENTS, MATCH_INSTANT, MATCH_STATIC_SHARED_LIBRARIES, MATCH_STATIC_SHARED_AND_SDK_LIBRARIES, GET_DISABLED_UNTIL_USED_COMPONENTS, GET_UNINSTALLED_PACKAGES, MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS, Loading @@ -721,7 +721,7 @@ public abstract class PackageManager { MATCH_SYSTEM_ONLY, MATCH_UNINSTALLED_PACKAGES, MATCH_INSTANT, MATCH_STATIC_SHARED_LIBRARIES, MATCH_STATIC_SHARED_AND_SDK_LIBRARIES, GET_DISABLED_COMPONENTS, GET_DISABLED_UNTIL_USED_COMPONENTS, GET_UNINSTALLED_PACKAGES, Loading Loading @@ -1038,14 +1038,14 @@ public abstract class PackageManager { public static final int MATCH_EXPLICITLY_VISIBLE_ONLY = 0x02000000; /** * Internal {@link PackageInfo} flag: include static shared libraries. * Apps that depend on static shared libs can always access the version * Internal {@link PackageInfo} flag: include static shared and SDK libraries. * Apps that depend on static shared/SDK libs can always access the version * of the lib they depend on. System/shell/root can access all shared * libs regardless of dependency but need to explicitly ask for them * via this flag. * @hide */ public static final int MATCH_STATIC_SHARED_LIBRARIES = 0x04000000; public static final int MATCH_STATIC_SHARED_AND_SDK_LIBRARIES = 0x04000000; /** * {@link PackageInfo} flag: return the signing certificates associated with Loading core/java/android/content/pm/SharedLibraryInfo.java +17 −0 Original line number Diff line number Diff line Loading @@ -69,6 +69,13 @@ public final class SharedLibraryInfo implements Parcelable { */ public static final int TYPE_STATIC = 2; /** * SDK library type: this library is <strong>not</strong> backwards * -compatible, can be updated and updates can be uninstalled. Clients * depend on a specific version of the library. */ public static final int TYPE_SDK = 3; /** * Constant for referring to an undefined version. */ Loading Loading @@ -288,6 +295,13 @@ public final class SharedLibraryInfo implements Parcelable { return mType == TYPE_STATIC; } /** * @hide */ public boolean isSdk() { return mType == TYPE_SDK; } /** * Gets the package that declares the library. * Loading Loading @@ -351,6 +365,9 @@ public final class SharedLibraryInfo implements Parcelable { case TYPE_STATIC: { return "static"; } case TYPE_SDK: { return "sdk"; } default: { return "unknown"; } Loading core/java/android/content/pm/parsing/ParsingPackage.java +10 −4 Original line number Diff line number Diff line Loading @@ -103,11 +103,11 @@ public interface ParsingPackage extends ParsingPackageRead { ParsingPackage addUsesOptionalNativeLibrary(String libraryName); ParsingPackage addUsesStaticLibrary(String libraryName); ParsingPackage addUsesSdkLibrary(String libraryName, long versionMajor, String[] certSha256Digests); ParsingPackage addUsesStaticLibraryCertDigests(String[] certSha256Digests); ParsingPackage addUsesStaticLibraryVersion(long version); ParsingPackage addUsesStaticLibrary(String libraryName, long version, String[] certSha256Digests); ParsingPackage addQueriesIntent(Intent intent); Loading Loading @@ -212,6 +212,12 @@ public interface ParsingPackage extends ParsingPackageRead { ParsingPackage setRestoreAnyVersion(boolean restoreAnyVersion); ParsingPackage setSdkLibName(String sdkLibName); ParsingPackage setSdkLibVersionMajor(int sdkLibVersionMajor); ParsingPackage setSdkLibrary(boolean sdkLibrary); ParsingPackage setSplitHasCode(int splitIndex, boolean splitHasCode); ParsingPackage setStaticSharedLibrary(boolean staticSharedLibrary); Loading core/java/android/content/pm/parsing/ParsingPackageImpl.java +105 −15 Original line number Diff line number Diff line Loading @@ -177,6 +177,10 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, @DataClass.ParcelWith(ForInternedStringValueMap.class) private Map<String, String> overlayables = emptyMap(); @Nullable @DataClass.ParcelWith(ForInternedString.class) private String sdkLibName; private int sdkLibVersionMajor; @Nullable @DataClass.ParcelWith(ForInternedString.class) private String staticSharedLibName; Loading @@ -203,10 +207,17 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, private List<String> usesStaticLibraries = emptyList(); @Nullable private long[] usesStaticLibrariesVersions; @Nullable private String[][] usesStaticLibrariesCertDigests; @NonNull @DataClass.ParcelWith(ForInternedStringList.class) private List<String> usesSdkLibraries = emptyList(); @Nullable private long[] usesSdkLibrariesVersionsMajor; @Nullable private String[][] usesSdkLibrariesCertDigests; @Nullable @DataClass.ParcelWith(ForInternedString.class) private String sharedUserId; Loading Loading @@ -518,6 +529,7 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, private static final long REQUEST_FOREGROUND_SERVICE_EXEMPTION = 1L << 46; private static final long ATTRIBUTIONS_ARE_USER_VISIBLE = 1L << 47; private static final long RESET_ENABLED_SETTINGS_ON_APP_DATA_CLEARED = 1L << 48; private static final long SDK_LIBRARY = 1L << 49; } private ParsingPackageImpl setBoolean(@Booleans.Values long flag, boolean value) { Loading Loading @@ -828,21 +840,24 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, } @Override public ParsingPackageImpl addUsesStaticLibrary(String libraryName) { this.usesStaticLibraries = CollectionUtils.add(this.usesStaticLibraries, public ParsingPackageImpl addUsesSdkLibrary(String libraryName, long versionMajor, String[] certSha256Digests) { this.usesSdkLibraries = CollectionUtils.add(this.usesSdkLibraries, TextUtils.safeIntern(libraryName)); this.usesSdkLibrariesVersionsMajor = ArrayUtils.appendLong( this.usesSdkLibrariesVersionsMajor, versionMajor, true); this.usesSdkLibrariesCertDigests = ArrayUtils.appendElement(String[].class, this.usesSdkLibrariesCertDigests, certSha256Digests, true); return this; } @Override public ParsingPackageImpl addUsesStaticLibraryVersion(long version) { public ParsingPackageImpl addUsesStaticLibrary(String libraryName, long version, String[] certSha256Digests) { this.usesStaticLibraries = CollectionUtils.add(this.usesStaticLibraries, TextUtils.safeIntern(libraryName)); this.usesStaticLibrariesVersions = ArrayUtils.appendLong(this.usesStaticLibrariesVersions, version, true); return this; } @Override public ParsingPackageImpl addUsesStaticLibraryCertDigests(String[] certSha256Digests) { this.usesStaticLibrariesCertDigests = ArrayUtils.appendElement(String[].class, this.usesStaticLibrariesCertDigests, certSha256Digests, true); return this; Loading Loading @@ -1136,6 +1151,8 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, dest.writeString(this.overlayCategory); dest.writeInt(this.overlayPriority); sForInternedStringValueMap.parcel(this.overlayables, dest, flags); sForInternedString.parcel(this.sdkLibName, dest, flags); dest.writeInt(this.sdkLibVersionMajor); sForInternedString.parcel(this.staticSharedLibName, dest, flags); dest.writeLong(this.staticSharedLibVersion); sForInternedStringList.parcel(this.libraryNames, dest, flags); Loading @@ -1143,9 +1160,9 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, sForInternedStringList.parcel(this.usesOptionalLibraries, dest, flags); sForInternedStringList.parcel(this.usesNativeLibraries, dest, flags); sForInternedStringList.parcel(this.usesOptionalNativeLibraries, dest, flags); sForInternedStringList.parcel(this.usesStaticLibraries, dest, flags); dest.writeLongArray(this.usesStaticLibrariesVersions); if (this.usesStaticLibrariesCertDigests == null) { dest.writeInt(-1); } else { Loading @@ -1155,6 +1172,17 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, } } sForInternedStringList.parcel(this.usesSdkLibraries, dest, flags); dest.writeLongArray(this.usesSdkLibrariesVersionsMajor); if (this.usesSdkLibrariesCertDigests == null) { dest.writeInt(-1); } else { dest.writeInt(this.usesSdkLibrariesCertDigests.length); for (int index = 0; index < this.usesSdkLibrariesCertDigests.length; index++) { dest.writeStringArray(this.usesSdkLibrariesCertDigests[index]); } } sForInternedString.parcel(this.sharedUserId, dest, flags); dest.writeInt(this.sharedUserLabel); dest.writeTypedList(this.configPreferences); Loading Loading @@ -1259,6 +1287,8 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, this.overlayCategory = in.readString(); this.overlayPriority = in.readInt(); this.overlayables = sForInternedStringValueMap.unparcel(in); this.sdkLibName = sForInternedString.unparcel(in); this.sdkLibVersionMajor = in.readInt(); this.staticSharedLibName = sForInternedString.unparcel(in); this.staticSharedLibVersion = in.readLong(); this.libraryNames = sForInternedStringList.unparcel(in); Loading @@ -1266,14 +1296,29 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, this.usesOptionalLibraries = sForInternedStringList.unparcel(in); this.usesNativeLibraries = sForInternedStringList.unparcel(in); this.usesOptionalNativeLibraries = sForInternedStringList.unparcel(in); this.usesStaticLibraries = sForInternedStringList.unparcel(in); this.usesStaticLibrariesVersions = in.createLongArray(); { int digestsSize = in.readInt(); if (digestsSize >= 0) { this.usesStaticLibrariesCertDigests = new String[digestsSize][]; for (int index = 0; index < digestsSize; index++) { this.usesStaticLibrariesCertDigests[index] = sForInternedStringArray.unparcel(in); this.usesStaticLibrariesCertDigests[index] = sForInternedStringArray.unparcel( in); } } } this.usesSdkLibraries = sForInternedStringList.unparcel(in); this.usesSdkLibrariesVersionsMajor = in.createLongArray(); { int digestsSize = in.readInt(); if (digestsSize >= 0) { this.usesSdkLibrariesCertDigests = new String[digestsSize][]; for (int index = 0; index < digestsSize; index++) { this.usesSdkLibrariesCertDigests[index] = sForInternedStringArray.unparcel(in); } } } Loading Loading @@ -1477,6 +1522,17 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return overlayables; } @Nullable @Override public String getSdkLibName() { return sdkLibName; } @Override public int getSdkLibVersionMajor() { return sdkLibVersionMajor; } @Nullable @Override public String getStaticSharedLibName() { Loading Loading @@ -1536,6 +1592,18 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return usesStaticLibrariesCertDigests; } @NonNull @Override public List<String> getUsesSdkLibraries() { return usesSdkLibraries; } @Nullable @Override public long[] getUsesSdkLibrariesVersionsMajor() { return usesSdkLibrariesVersionsMajor; } @Nullable @Override public String[][] getUsesSdkLibrariesCertDigests() { return usesSdkLibrariesCertDigests; } @Nullable @Override public String getSharedUserId() { Loading Loading @@ -2082,6 +2150,11 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return getBoolean(Booleans.STATIC_SHARED_LIBRARY); } @Override public boolean isSdkLibrary() { return getBoolean(Booleans.SDK_LIBRARY); } @Override public boolean isOverlay() { return getBoolean(Booleans.OVERLAY); Loading Loading @@ -2557,6 +2630,23 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return this; } @Override public ParsingPackageImpl setSdkLibName(String sdkLibName) { this.sdkLibName = TextUtils.safeIntern(sdkLibName); return this; } @Override public ParsingPackageImpl setSdkLibVersionMajor(int sdkLibVersionMajor) { this.sdkLibVersionMajor = sdkLibVersionMajor; return this; } @Override public ParsingPackageImpl setSdkLibrary(boolean value) { return setBoolean(Booleans.SDK_LIBRARY, value); } @Override public ParsingPackageImpl setStaticSharedLibrary(boolean value) { return setBoolean(Booleans.STATIC_SHARED_LIBRARY, value); Loading Loading
core/api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -13223,6 +13223,7 @@ package android.content.pm { field @NonNull public static final android.os.Parcelable.Creator<android.content.pm.SharedLibraryInfo> CREATOR; field public static final int TYPE_BUILTIN = 0; // 0x0 field public static final int TYPE_DYNAMIC = 1; // 0x1 field public static final int TYPE_SDK = 3; // 0x3 field public static final int TYPE_STATIC = 2; // 0x2 field public static final int VERSION_UNDEFINED = -1; // 0xffffffff }
core/java/android/content/pm/PackageManager.java +5 −5 Original line number Diff line number Diff line Loading @@ -697,7 +697,7 @@ public abstract class PackageManager { MATCH_DISABLED_COMPONENTS, MATCH_DISABLED_UNTIL_USED_COMPONENTS, MATCH_INSTANT, MATCH_STATIC_SHARED_LIBRARIES, MATCH_STATIC_SHARED_AND_SDK_LIBRARIES, GET_DISABLED_UNTIL_USED_COMPONENTS, GET_UNINSTALLED_PACKAGES, MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS, Loading @@ -721,7 +721,7 @@ public abstract class PackageManager { MATCH_SYSTEM_ONLY, MATCH_UNINSTALLED_PACKAGES, MATCH_INSTANT, MATCH_STATIC_SHARED_LIBRARIES, MATCH_STATIC_SHARED_AND_SDK_LIBRARIES, GET_DISABLED_COMPONENTS, GET_DISABLED_UNTIL_USED_COMPONENTS, GET_UNINSTALLED_PACKAGES, Loading Loading @@ -1038,14 +1038,14 @@ public abstract class PackageManager { public static final int MATCH_EXPLICITLY_VISIBLE_ONLY = 0x02000000; /** * Internal {@link PackageInfo} flag: include static shared libraries. * Apps that depend on static shared libs can always access the version * Internal {@link PackageInfo} flag: include static shared and SDK libraries. * Apps that depend on static shared/SDK libs can always access the version * of the lib they depend on. System/shell/root can access all shared * libs regardless of dependency but need to explicitly ask for them * via this flag. * @hide */ public static final int MATCH_STATIC_SHARED_LIBRARIES = 0x04000000; public static final int MATCH_STATIC_SHARED_AND_SDK_LIBRARIES = 0x04000000; /** * {@link PackageInfo} flag: return the signing certificates associated with Loading
core/java/android/content/pm/SharedLibraryInfo.java +17 −0 Original line number Diff line number Diff line Loading @@ -69,6 +69,13 @@ public final class SharedLibraryInfo implements Parcelable { */ public static final int TYPE_STATIC = 2; /** * SDK library type: this library is <strong>not</strong> backwards * -compatible, can be updated and updates can be uninstalled. Clients * depend on a specific version of the library. */ public static final int TYPE_SDK = 3; /** * Constant for referring to an undefined version. */ Loading Loading @@ -288,6 +295,13 @@ public final class SharedLibraryInfo implements Parcelable { return mType == TYPE_STATIC; } /** * @hide */ public boolean isSdk() { return mType == TYPE_SDK; } /** * Gets the package that declares the library. * Loading Loading @@ -351,6 +365,9 @@ public final class SharedLibraryInfo implements Parcelable { case TYPE_STATIC: { return "static"; } case TYPE_SDK: { return "sdk"; } default: { return "unknown"; } Loading
core/java/android/content/pm/parsing/ParsingPackage.java +10 −4 Original line number Diff line number Diff line Loading @@ -103,11 +103,11 @@ public interface ParsingPackage extends ParsingPackageRead { ParsingPackage addUsesOptionalNativeLibrary(String libraryName); ParsingPackage addUsesStaticLibrary(String libraryName); ParsingPackage addUsesSdkLibrary(String libraryName, long versionMajor, String[] certSha256Digests); ParsingPackage addUsesStaticLibraryCertDigests(String[] certSha256Digests); ParsingPackage addUsesStaticLibraryVersion(long version); ParsingPackage addUsesStaticLibrary(String libraryName, long version, String[] certSha256Digests); ParsingPackage addQueriesIntent(Intent intent); Loading Loading @@ -212,6 +212,12 @@ public interface ParsingPackage extends ParsingPackageRead { ParsingPackage setRestoreAnyVersion(boolean restoreAnyVersion); ParsingPackage setSdkLibName(String sdkLibName); ParsingPackage setSdkLibVersionMajor(int sdkLibVersionMajor); ParsingPackage setSdkLibrary(boolean sdkLibrary); ParsingPackage setSplitHasCode(int splitIndex, boolean splitHasCode); ParsingPackage setStaticSharedLibrary(boolean staticSharedLibrary); Loading
core/java/android/content/pm/parsing/ParsingPackageImpl.java +105 −15 Original line number Diff line number Diff line Loading @@ -177,6 +177,10 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, @DataClass.ParcelWith(ForInternedStringValueMap.class) private Map<String, String> overlayables = emptyMap(); @Nullable @DataClass.ParcelWith(ForInternedString.class) private String sdkLibName; private int sdkLibVersionMajor; @Nullable @DataClass.ParcelWith(ForInternedString.class) private String staticSharedLibName; Loading @@ -203,10 +207,17 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, private List<String> usesStaticLibraries = emptyList(); @Nullable private long[] usesStaticLibrariesVersions; @Nullable private String[][] usesStaticLibrariesCertDigests; @NonNull @DataClass.ParcelWith(ForInternedStringList.class) private List<String> usesSdkLibraries = emptyList(); @Nullable private long[] usesSdkLibrariesVersionsMajor; @Nullable private String[][] usesSdkLibrariesCertDigests; @Nullable @DataClass.ParcelWith(ForInternedString.class) private String sharedUserId; Loading Loading @@ -518,6 +529,7 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, private static final long REQUEST_FOREGROUND_SERVICE_EXEMPTION = 1L << 46; private static final long ATTRIBUTIONS_ARE_USER_VISIBLE = 1L << 47; private static final long RESET_ENABLED_SETTINGS_ON_APP_DATA_CLEARED = 1L << 48; private static final long SDK_LIBRARY = 1L << 49; } private ParsingPackageImpl setBoolean(@Booleans.Values long flag, boolean value) { Loading Loading @@ -828,21 +840,24 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, } @Override public ParsingPackageImpl addUsesStaticLibrary(String libraryName) { this.usesStaticLibraries = CollectionUtils.add(this.usesStaticLibraries, public ParsingPackageImpl addUsesSdkLibrary(String libraryName, long versionMajor, String[] certSha256Digests) { this.usesSdkLibraries = CollectionUtils.add(this.usesSdkLibraries, TextUtils.safeIntern(libraryName)); this.usesSdkLibrariesVersionsMajor = ArrayUtils.appendLong( this.usesSdkLibrariesVersionsMajor, versionMajor, true); this.usesSdkLibrariesCertDigests = ArrayUtils.appendElement(String[].class, this.usesSdkLibrariesCertDigests, certSha256Digests, true); return this; } @Override public ParsingPackageImpl addUsesStaticLibraryVersion(long version) { public ParsingPackageImpl addUsesStaticLibrary(String libraryName, long version, String[] certSha256Digests) { this.usesStaticLibraries = CollectionUtils.add(this.usesStaticLibraries, TextUtils.safeIntern(libraryName)); this.usesStaticLibrariesVersions = ArrayUtils.appendLong(this.usesStaticLibrariesVersions, version, true); return this; } @Override public ParsingPackageImpl addUsesStaticLibraryCertDigests(String[] certSha256Digests) { this.usesStaticLibrariesCertDigests = ArrayUtils.appendElement(String[].class, this.usesStaticLibrariesCertDigests, certSha256Digests, true); return this; Loading Loading @@ -1136,6 +1151,8 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, dest.writeString(this.overlayCategory); dest.writeInt(this.overlayPriority); sForInternedStringValueMap.parcel(this.overlayables, dest, flags); sForInternedString.parcel(this.sdkLibName, dest, flags); dest.writeInt(this.sdkLibVersionMajor); sForInternedString.parcel(this.staticSharedLibName, dest, flags); dest.writeLong(this.staticSharedLibVersion); sForInternedStringList.parcel(this.libraryNames, dest, flags); Loading @@ -1143,9 +1160,9 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, sForInternedStringList.parcel(this.usesOptionalLibraries, dest, flags); sForInternedStringList.parcel(this.usesNativeLibraries, dest, flags); sForInternedStringList.parcel(this.usesOptionalNativeLibraries, dest, flags); sForInternedStringList.parcel(this.usesStaticLibraries, dest, flags); dest.writeLongArray(this.usesStaticLibrariesVersions); if (this.usesStaticLibrariesCertDigests == null) { dest.writeInt(-1); } else { Loading @@ -1155,6 +1172,17 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, } } sForInternedStringList.parcel(this.usesSdkLibraries, dest, flags); dest.writeLongArray(this.usesSdkLibrariesVersionsMajor); if (this.usesSdkLibrariesCertDigests == null) { dest.writeInt(-1); } else { dest.writeInt(this.usesSdkLibrariesCertDigests.length); for (int index = 0; index < this.usesSdkLibrariesCertDigests.length; index++) { dest.writeStringArray(this.usesSdkLibrariesCertDigests[index]); } } sForInternedString.parcel(this.sharedUserId, dest, flags); dest.writeInt(this.sharedUserLabel); dest.writeTypedList(this.configPreferences); Loading Loading @@ -1259,6 +1287,8 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, this.overlayCategory = in.readString(); this.overlayPriority = in.readInt(); this.overlayables = sForInternedStringValueMap.unparcel(in); this.sdkLibName = sForInternedString.unparcel(in); this.sdkLibVersionMajor = in.readInt(); this.staticSharedLibName = sForInternedString.unparcel(in); this.staticSharedLibVersion = in.readLong(); this.libraryNames = sForInternedStringList.unparcel(in); Loading @@ -1266,14 +1296,29 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, this.usesOptionalLibraries = sForInternedStringList.unparcel(in); this.usesNativeLibraries = sForInternedStringList.unparcel(in); this.usesOptionalNativeLibraries = sForInternedStringList.unparcel(in); this.usesStaticLibraries = sForInternedStringList.unparcel(in); this.usesStaticLibrariesVersions = in.createLongArray(); { int digestsSize = in.readInt(); if (digestsSize >= 0) { this.usesStaticLibrariesCertDigests = new String[digestsSize][]; for (int index = 0; index < digestsSize; index++) { this.usesStaticLibrariesCertDigests[index] = sForInternedStringArray.unparcel(in); this.usesStaticLibrariesCertDigests[index] = sForInternedStringArray.unparcel( in); } } } this.usesSdkLibraries = sForInternedStringList.unparcel(in); this.usesSdkLibrariesVersionsMajor = in.createLongArray(); { int digestsSize = in.readInt(); if (digestsSize >= 0) { this.usesSdkLibrariesCertDigests = new String[digestsSize][]; for (int index = 0; index < digestsSize; index++) { this.usesSdkLibrariesCertDigests[index] = sForInternedStringArray.unparcel(in); } } } Loading Loading @@ -1477,6 +1522,17 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return overlayables; } @Nullable @Override public String getSdkLibName() { return sdkLibName; } @Override public int getSdkLibVersionMajor() { return sdkLibVersionMajor; } @Nullable @Override public String getStaticSharedLibName() { Loading Loading @@ -1536,6 +1592,18 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return usesStaticLibrariesCertDigests; } @NonNull @Override public List<String> getUsesSdkLibraries() { return usesSdkLibraries; } @Nullable @Override public long[] getUsesSdkLibrariesVersionsMajor() { return usesSdkLibrariesVersionsMajor; } @Nullable @Override public String[][] getUsesSdkLibrariesCertDigests() { return usesSdkLibrariesCertDigests; } @Nullable @Override public String getSharedUserId() { Loading Loading @@ -2082,6 +2150,11 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return getBoolean(Booleans.STATIC_SHARED_LIBRARY); } @Override public boolean isSdkLibrary() { return getBoolean(Booleans.SDK_LIBRARY); } @Override public boolean isOverlay() { return getBoolean(Booleans.OVERLAY); Loading Loading @@ -2557,6 +2630,23 @@ public class ParsingPackageImpl implements ParsingPackage, ParsingPackageHidden, return this; } @Override public ParsingPackageImpl setSdkLibName(String sdkLibName) { this.sdkLibName = TextUtils.safeIntern(sdkLibName); return this; } @Override public ParsingPackageImpl setSdkLibVersionMajor(int sdkLibVersionMajor) { this.sdkLibVersionMajor = sdkLibVersionMajor; return this; } @Override public ParsingPackageImpl setSdkLibrary(boolean value) { return setBoolean(Booleans.SDK_LIBRARY, value); } @Override public ParsingPackageImpl setStaticSharedLibrary(boolean value) { return setBoolean(Booleans.STATIC_SHARED_LIBRARY, value); Loading