Merge "Customer API feedback." into sc-dev

This commit is contained in:
Alex Buynytskyy
2021-05-04 18:37:19 +00:00
committed by Android (Google) Code Review
7 changed files with 35 additions and 22 deletions

View File

@@ -881,7 +881,7 @@ public class ApplicationPackageManager extends PackageManager {
@Override @Override
public void requestChecksums(@NonNull String packageName, boolean includeSplits, public void requestChecksums(@NonNull String packageName, boolean includeSplits,
@Checksum.Type int required, @NonNull List<Certificate> trustedInstallers, @Checksum.TypeMask int required, @NonNull List<Certificate> trustedInstallers,
@NonNull OnChecksumsReadyListener onChecksumsReadyListener) @NonNull OnChecksumsReadyListener onChecksumsReadyListener)
throws CertificateEncodingException, NameNotFoundException { throws CertificateEncodingException, NameNotFoundException {
Objects.requireNonNull(packageName); Objects.requireNonNull(packageName);

View File

@@ -118,7 +118,7 @@ public final class ApkChecksum implements Parcelable {
// Code below generated by codegen v1.0.15. // Code below generated by codegen v1.0.23.
// //
// DO NOT MODIFY! // DO NOT MODIFY!
// CHECKSTYLE:OFF Generated code // CHECKSTYLE:OFF Generated code
@@ -235,8 +235,8 @@ public final class ApkChecksum implements Parcelable {
}; };
@DataClass.Generated( @DataClass.Generated(
time = 1601589269293L, time = 1619810171079L,
codegenVersion = "1.0.15", codegenVersion = "1.0.23",
sourceFile = "frameworks/base/core/java/android/content/pm/ApkChecksum.java", sourceFile = "frameworks/base/core/java/android/content/pm/ApkChecksum.java",
inputSignatures = "private final @android.annotation.Nullable java.lang.String mSplitName\nprivate final @android.annotation.NonNull android.content.pm.Checksum mChecksum\nprivate final @android.annotation.Nullable java.lang.String mInstallerPackageName\nprivate final @android.annotation.Nullable byte[] mInstallerCertificate\npublic @android.content.pm.Checksum.Type int getType()\npublic @android.annotation.NonNull byte[] getValue()\npublic @android.annotation.Nullable byte[] getInstallerCertificateBytes()\npublic @android.annotation.Nullable java.security.cert.Certificate getInstallerCertificate()\nclass ApkChecksum extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genHiddenConstructor=true)") inputSignatures = "private final @android.annotation.Nullable java.lang.String mSplitName\nprivate final @android.annotation.NonNull android.content.pm.Checksum mChecksum\nprivate final @android.annotation.Nullable java.lang.String mInstallerPackageName\nprivate final @android.annotation.Nullable byte[] mInstallerCertificate\npublic @android.content.pm.Checksum.Type int getType()\npublic @android.annotation.NonNull byte[] getValue()\npublic @android.annotation.Nullable byte[] getInstallerCertificateBytes()\npublic @android.annotation.Nullable java.security.cert.Certificate getInstallerCertificate()\nclass ApkChecksum extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genHiddenConstructor=true)")
@Deprecated @Deprecated

View File

@@ -113,7 +113,7 @@ public final class Checksum implements Parcelable {
public static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA512 = 0x00000040; public static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA512 = 0x00000040;
/** @hide */ /** @hide */
@IntDef(flag = true, prefix = {"TYPE_"}, value = { @IntDef(prefix = {"TYPE_"}, value = {
TYPE_WHOLE_MERKLE_ROOT_4K_SHA256, TYPE_WHOLE_MERKLE_ROOT_4K_SHA256,
TYPE_WHOLE_MD5, TYPE_WHOLE_MD5,
TYPE_WHOLE_SHA1, TYPE_WHOLE_SHA1,
@@ -125,6 +125,19 @@ public final class Checksum implements Parcelable {
@Retention(RetentionPolicy.SOURCE) @Retention(RetentionPolicy.SOURCE)
public @interface Type {} public @interface Type {}
/** @hide */
@IntDef(flag = true, prefix = {"TYPE_"}, value = {
TYPE_WHOLE_MERKLE_ROOT_4K_SHA256,
TYPE_WHOLE_MD5,
TYPE_WHOLE_SHA1,
TYPE_WHOLE_SHA256,
TYPE_WHOLE_SHA512,
TYPE_PARTIAL_MERKLE_ROOT_1M_SHA256,
TYPE_PARTIAL_MERKLE_ROOT_1M_SHA512,
})
@Retention(RetentionPolicy.SOURCE)
public @interface TypeMask {}
/** /**
* Serialize checksum to the stream in binary format. * Serialize checksum to the stream in binary format.
* @hide * @hide
@@ -163,7 +176,7 @@ public final class Checksum implements Parcelable {
// Code below generated by codegen v1.0.22. // Code below generated by codegen v1.0.23.
// //
// DO NOT MODIFY! // DO NOT MODIFY!
// CHECKSTYLE:OFF Generated code // CHECKSTYLE:OFF Generated code
@@ -263,8 +276,8 @@ public final class Checksum implements Parcelable {
}; };
@DataClass.Generated( @DataClass.Generated(
time = 1611601571576L, time = 1619810358402L,
codegenVersion = "1.0.22", codegenVersion = "1.0.23",
sourceFile = "frameworks/base/core/java/android/content/pm/Checksum.java", sourceFile = "frameworks/base/core/java/android/content/pm/Checksum.java",
inputSignatures = "public static final int TYPE_WHOLE_MERKLE_ROOT_4K_SHA256\npublic static final @java.lang.Deprecated int TYPE_WHOLE_MD5\npublic static final @java.lang.Deprecated int TYPE_WHOLE_SHA1\npublic static final @java.lang.Deprecated int TYPE_WHOLE_SHA256\npublic static final @java.lang.Deprecated int TYPE_WHOLE_SHA512\npublic static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA256\npublic static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA512\nprivate final @android.content.pm.Checksum.Type int mType\nprivate final @android.annotation.NonNull byte[] mValue\npublic static void writeToStream(java.io.DataOutputStream,android.content.pm.Checksum)\npublic static @android.annotation.NonNull android.content.pm.Checksum readFromStream(java.io.DataInputStream)\nclass Checksum extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genConstDefs=false)") inputSignatures = "public static final int TYPE_WHOLE_MERKLE_ROOT_4K_SHA256\npublic static final @java.lang.Deprecated int TYPE_WHOLE_MD5\npublic static final @java.lang.Deprecated int TYPE_WHOLE_SHA1\npublic static final @java.lang.Deprecated int TYPE_WHOLE_SHA256\npublic static final @java.lang.Deprecated int TYPE_WHOLE_SHA512\npublic static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA256\npublic static final int TYPE_PARTIAL_MERKLE_ROOT_1M_SHA512\nprivate final @android.content.pm.Checksum.Type int mType\nprivate final @android.annotation.NonNull byte[] mValue\npublic static void writeToStream(java.io.DataOutputStream,android.content.pm.Checksum)\npublic static @android.annotation.NonNull android.content.pm.Checksum readFromStream(java.io.DataInputStream)\nclass Checksum extends java.lang.Object implements [android.os.Parcelable]\n@com.android.internal.util.DataClass(genConstDefs=false)")
@Deprecated @Deprecated

View File

@@ -8711,7 +8711,7 @@ public abstract class PackageManager {
* @throws NameNotFoundException if a package with the given name cannot be found on the system. * @throws NameNotFoundException if a package with the given name cannot be found on the system.
*/ */
public void requestChecksums(@NonNull String packageName, boolean includeSplits, public void requestChecksums(@NonNull String packageName, boolean includeSplits,
@Checksum.Type int required, @NonNull List<Certificate> trustedInstallers, @Checksum.TypeMask int required, @NonNull List<Certificate> trustedInstallers,
@NonNull OnChecksumsReadyListener onChecksumsReadyListener) @NonNull OnChecksumsReadyListener onChecksumsReadyListener)
throws CertificateEncodingException, NameNotFoundException { throws CertificateEncodingException, NameNotFoundException {
throw new UnsupportedOperationException("requestChecksums not implemented in subclass"); throw new UnsupportedOperationException("requestChecksums not implemented in subclass");

View File

@@ -1133,7 +1133,7 @@ public abstract class PackageManagerInternal implements PackageSettingsSnapshotP
* @param handler to use for postponed calculations. * @param handler to use for postponed calculations.
*/ */
public abstract void requestChecksums(@NonNull String packageName, boolean includeSplits, public abstract void requestChecksums(@NonNull String packageName, boolean includeSplits,
@Checksum.Type int optional, @Checksum.Type int required, @Checksum.TypeMask int optional, @Checksum.TypeMask int required,
@Nullable List trustedInstallers, @Nullable List trustedInstallers,
@NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId, @NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId,
@NonNull Executor executor, @NonNull Handler handler); @NonNull Executor executor, @NonNull Handler handler);

View File

@@ -303,8 +303,8 @@ public class ApkChecksums {
* @param onChecksumsReadyListener to receive the resulting checksums * @param onChecksumsReadyListener to receive the resulting checksums
*/ */
public static void getChecksums(List<Pair<String, File>> filesToChecksum, public static void getChecksums(List<Pair<String, File>> filesToChecksum,
@Checksum.Type int optional, @Checksum.TypeMask int optional,
@Checksum.Type int required, @Checksum.TypeMask int required,
@Nullable String installerPackageName, @Nullable String installerPackageName,
@Nullable Certificate[] trustedInstallers, @Nullable Certificate[] trustedInstallers,
@NonNull IOnChecksumsReadyListener onChecksumsReadyListener, @NonNull IOnChecksumsReadyListener onChecksumsReadyListener,
@@ -331,7 +331,7 @@ public class ApkChecksums {
private static void processRequiredChecksums(List<Pair<String, File>> filesToChecksum, private static void processRequiredChecksums(List<Pair<String, File>> filesToChecksum,
List<Map<Integer, ApkChecksum>> result, List<Map<Integer, ApkChecksum>> result,
@Checksum.Type int required, @Checksum.TypeMask int required,
@NonNull IOnChecksumsReadyListener onChecksumsReadyListener, @NonNull IOnChecksumsReadyListener onChecksumsReadyListener,
@NonNull Injector injector, @NonNull Injector injector,
long startTime) { long startTime) {
@@ -382,7 +382,7 @@ public class ApkChecksums {
* @param checksums resulting checksums * @param checksums resulting checksums
*/ */
private static void getAvailableApkChecksums(String split, File file, private static void getAvailableApkChecksums(String split, File file,
@Checksum.Type int types, @Checksum.TypeMask int types,
@Nullable String installerPackageName, @Nullable String installerPackageName,
@Nullable Certificate[] trustedInstallers, @Nullable Certificate[] trustedInstallers,
Map<Integer, ApkChecksum> checksums, Map<Integer, ApkChecksum> checksums,
@@ -415,7 +415,7 @@ public class ApkChecksums {
} }
private static void getInstallerChecksums(String split, File file, private static void getInstallerChecksums(String split, File file,
@Checksum.Type int types, @Checksum.TypeMask int types,
@Nullable String installerPackageName, @Nullable String installerPackageName,
@Nullable Certificate[] trustedInstallers, @Nullable Certificate[] trustedInstallers,
Map<Integer, ApkChecksum> checksums, Map<Integer, ApkChecksum> checksums,
@@ -523,7 +523,7 @@ public class ApkChecksums {
* Whether the file is available for checksumming or we need to wait. * Whether the file is available for checksumming or we need to wait.
*/ */
private static boolean needToWait(File file, private static boolean needToWait(File file,
@Checksum.Type int types, @Checksum.TypeMask int types,
Map<Integer, ApkChecksum> checksums, Map<Integer, ApkChecksum> checksums,
@NonNull Injector injector) throws IOException { @NonNull Injector injector) throws IOException {
if (!isRequired(TYPE_WHOLE_MERKLE_ROOT_4K_SHA256, types, checksums) if (!isRequired(TYPE_WHOLE_MERKLE_ROOT_4K_SHA256, types, checksums)
@@ -564,7 +564,7 @@ public class ApkChecksums {
* @param checksums resulting checksums * @param checksums resulting checksums
*/ */
private static void getRequiredApkChecksums(String split, File file, private static void getRequiredApkChecksums(String split, File file,
@Checksum.Type int types, @Checksum.TypeMask int types,
Map<Integer, ApkChecksum> checksums) { Map<Integer, ApkChecksum> checksums) {
final String filePath = file.getAbsolutePath(); final String filePath = file.getAbsolutePath();
@@ -596,7 +596,7 @@ public class ApkChecksums {
} }
private static boolean isRequired(@Checksum.Type int type, private static boolean isRequired(@Checksum.Type int type,
@Checksum.Type int types, Map<Integer, ApkChecksum> checksums) { @Checksum.TypeMask int types, Map<Integer, ApkChecksum> checksums) {
if ((types & type) == 0) { if ((types & type) == 0) {
return false; return false;
} }

View File

@@ -5707,8 +5707,8 @@ public class PackageManagerService extends IPackageManager.Stub
@Override @Override
public void requestChecksums(@NonNull String packageName, boolean includeSplits, public void requestChecksums(@NonNull String packageName, boolean includeSplits,
@Checksum.Type int optional, @Checksum.TypeMask int optional,
@Checksum.Type int required, @Nullable List trustedInstallers, @Checksum.TypeMask int required, @Nullable List trustedInstallers,
@NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId) { @NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId) {
requestChecksumsInternal(packageName, includeSplits, optional, required, trustedInstallers, requestChecksumsInternal(packageName, includeSplits, optional, required, trustedInstallers,
onChecksumsReadyListener, userId, mInjector.getBackgroundExecutor(), onChecksumsReadyListener, userId, mInjector.getBackgroundExecutor(),
@@ -5716,7 +5716,7 @@ public class PackageManagerService extends IPackageManager.Stub
} }
private void requestChecksumsInternal(@NonNull String packageName, boolean includeSplits, private void requestChecksumsInternal(@NonNull String packageName, boolean includeSplits,
@Checksum.Type int optional, @Checksum.Type int required, @Checksum.TypeMask int optional, @Checksum.TypeMask int required,
@Nullable List trustedInstallers, @Nullable List trustedInstallers,
@NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId, @NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId,
@NonNull Executor executor, @NonNull Handler handler) { @NonNull Executor executor, @NonNull Handler handler) {
@@ -27239,7 +27239,7 @@ public class PackageManagerService extends IPackageManager.Stub
@Override @Override
public void requestChecksums(@NonNull String packageName, boolean includeSplits, public void requestChecksums(@NonNull String packageName, boolean includeSplits,
@Checksum.Type int optional, @Checksum.Type int required, @Checksum.TypeMask int optional, @Checksum.TypeMask int required,
@Nullable List trustedInstallers, @Nullable List trustedInstallers,
@NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId, @NonNull IOnChecksumsReadyListener onChecksumsReadyListener, int userId,
@NonNull Executor executor, @NonNull Handler handler) { @NonNull Executor executor, @NonNull Handler handler) {