Added in API level 31

PackageIdentifier


open class PackageIdentifier
kotlin.Any
   ↳ android.app.appsearch.PackageIdentifier

This class represents a uniquely identifiable package.

Summary

Public constructors
PackageIdentifier(packageName: String, sha256Certificate: ByteArray)

Creates a unique identifier for a package.

Public methods
open Boolean
equals(other: Any?)

Indicates whether some other object is "equal to" this one.

open String

open ByteArray

open Int

Public constructors

PackageIdentifier

Added in API level 31
PackageIdentifier(
    packageName: String,
    sha256Certificate: ByteArray)

Creates a unique identifier for a package.

SHA-256 certificate digests for a signed application can be retrieved with the apksigner tool that is part of the Android SDK build tools. Use apksigner verify --print-certs path/to/apk.apk to retrieve the SHA-256 certificate digest for the target application. Once retrieved, the SHA-256 certificate digest should be converted to a byte[] by decoding it in base16:

new android.content.pm.Signature(outputDigest).toByteArray();
  
Parameters
packageName String: Name of the package. This value cannot be null.
sha256Certificate ByteArray: SHA-256 certificate digest of the package. This value cannot be null.

Public methods

equals

Added in API level 31
open fun equals(other: Any?): Boolean

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
obj This value may be null.
Return
Boolean true if this object is the same as the obj argument; false otherwise.

getPackageName

Added in API level 31
open fun getPackageName(): String
Return
String This value cannot be null.

getSha256Certificate

Added in API level 31
open fun getSha256Certificate(): ByteArray
Return
ByteArray This value cannot be null.

hashCode

Added in API level 31
open fun hashCode(): Int
Return
Int a hash code value for this object.