Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Ctors](https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#pubctors) \| [Methods](https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#inhmethods)

# PackageInstaller.PreapprovalDetails.Builder

*** ** * ** ***

` public static final class PackageInstaller.PreapprovalDetails.Builder `   
` extends https://developer.android.com/reference/java/lang/Object ` ` `

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.content.pm.PackageInstaller.PreapprovalDetails.Builder |

<br />

*** ** * ** ***

A builder for `https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails`

## Summary

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#Builder()() ` Creates a new Builder. |

| ### Public methods ||
|---|---|
| ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails` | ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#build()() ` Builds the instance. |
| ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#setIcon(android.graphics.Bitmap)(https://developer.android.com/reference/android/graphics/Bitmap value) ` The icon representing the app to be installed. |
| ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#setLabel(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence value) ` The label representing the app to be installed. |
| ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#setLocale(android.icu.util.ULocale)(https://developer.android.com/reference/android/icu/util/ULocale value) ` The locale is used to get the app label from the APKs (includes the base APK and split APKs) related to the package to be installed. |
| ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | ` https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder#setPackageName(java.lang.String)(https://developer.android.com/reference/java/lang/String value) ` The package name of the app to be installed. |

### Inherited methods

From class ` https://developer.android.com/reference/java/lang/Object ` ` https://developer.android.com/reference/java/lang/Object` ` https://developer.android.com/reference/java/lang/Object#clone()() `

Creates and returns a copy of this object.
` boolean` ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) `

Indicates whether some other object is "equal to" this one.
` void` ` https://developer.android.com/reference/java/lang/Object#finalize()() `

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
` final https://developer.android.com/reference/java/lang/Class<?>` ` https://developer.android.com/reference/java/lang/Object#getClass()() `

Returns the runtime class of this `Object`.
` int` ` https://developer.android.com/reference/java/lang/Object#hashCode()() `

Returns a hash code value for the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#notify()() `

Wakes up a single thread that is waiting on this object's monitor.
` final void` ` https://developer.android.com/reference/java/lang/Object#notifyAll()() `

Wakes up all threads that are waiting on this object's monitor.
` https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/lang/Object#toString()() `

Returns a string representation of the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait()() `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*.

## Public constructors

### Builder

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Builder ()
```

Creates a new Builder.

<br />

## Public methods

### build

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PackageInstaller.PreapprovalDetails build ()
```

Builds the instance. This builder should not be touched after calling this!

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails` | This value cannot be `null`. <br /> |

### setIcon

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PackageInstaller.PreapprovalDetails.Builder setIcon (Bitmap value)
```

The icon representing the app to be installed.

<br />

| Parameters ||
|---|---|
| `value` | `Bitmap`: This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | This value cannot be `null`. <br /> |

### setLabel

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PackageInstaller.PreapprovalDetails.Builder setLabel (CharSequence value)
```

The label representing the app to be installed.

<br />

| Parameters ||
|---|---|
| `value` | `CharSequence`: This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | This value cannot be `null`. <br /> |

### setLocale

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PackageInstaller.PreapprovalDetails.Builder setLocale (ULocale value)
```

The locale is used to get the app label from the APKs (includes the base APK and split APKs) related to the package to be installed. The caller needs to make sure the app label is consistent with the app label of `https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails` when validating the installation. Otherwise, the pre-approval install session will fail.

<br />

| Parameters ||
|---|---|
| `value` | `ULocale`: This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | This value cannot be `null`. <br /> |

### setPackageName

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PackageInstaller.PreapprovalDetails.Builder setPackageName (String value)
```

The package name of the app to be installed.

<br />

| Parameters ||
|---|---|
| `value` | `String`: This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/content/pm/PackageInstaller.PreapprovalDetails.Builder` | This value cannot be `null`. <br /> |