# ProfileInstaller.DiagnosticsCallback

Artifact: [androidx.profileinstaller:profileinstaller](https://developer.android.com/jetpack/androidx/releases/profileinstaller) [View Source](https://cs.android.com/search?q=file:androidx/profileinstaller/ProfileInstaller.java+class:androidx.profileinstaller.ProfileInstaller.DiagnosticsCallback) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/profileinstaller#1.0.0)

*** ** * ** ***


```
public interface ProfileInstaller.DiagnosticsCallback
```

<br />

*** ** * ** ***

An object which can be passed to the ProfileInstaller which will receive information during the installation process which can be used for logging and telemetry.

## Summary

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/androidx/profileinstaller/ProfileInstaller.DiagnosticsCallback#onDiagnosticReceived(int,java.lang.Object)(int code, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html data)` The diagnostic method will get called 0 to many times during the installation process, and is passed a \[code\] and optionally \[data\] which provides some information around the install process. |
| `abstract void` | `https://developer.android.com/reference/androidx/profileinstaller/ProfileInstaller.DiagnosticsCallback#onResultReceived(int,java.lang.Object)(int code, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html data)` The result method will get called exactly once per installation, with a \[code\] indicating what the result of the installation was. |

## Public methods

### onDiagnosticReceived

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/profileinstaller#1.0.0)

```
abstract void onDiagnosticReceived(int code, @Nullable Object data)
```

The diagnostic method will get called 0 to many times during the installation process, and is passed a \[code\] and optionally \[data\] which provides some information around the install process.

| Parameters |
|---|---|
| `int code` | An int specifying which diagnostic situation has occurred. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html data` | Optional data passed in that relates to the code passed. |

### onResultReceived

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/profileinstaller#1.0.0)

```
abstract void onResultReceived(int code, @Nullable Object data)
```

The result method will get called exactly once per installation, with a \[code\] indicating what the result of the installation was.

| Parameters |
|---|---|
| `int code` | An int specifying which result situation has occurred. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html data` | Optional data passed in that relates to the code that was passed. |