diff --git a/README.md b/README.md
index 27953411..22873b7d 100644
--- a/README.md
+++ b/README.md
@@ -84,7 +84,7 @@ file.
```groovy
dependencies {
- implementation "eu.europa.ec.eudi:eudi-lib-android-wallet-core:0.1.0-SNAPSHOT"
+ implementation "eu.europa.ec.eudi:eudi-lib-android-wallet-core:0.5.0-SNAPSHOT"
implementation "androidx.biometric:biometric-ktx:1.2.0-alpha05"
}
```
@@ -469,7 +469,8 @@ state of the transfer. The following events are emitted:
2. `TransferEvent.Connecting`: The devices are connecting. Use this event to display a progress
indicator.
3. `TransferEvent.Connected`: The devices are connected.
-4. `TransferEvent.RequestReceived`: A request is received. Get the request from `event.request`.
+4. `TransferEvent.RequestReceived`: A request is received. Get the parsed request from `event.requestedDocumentData`
+ and the initial request as received by the verifier from `event.request`.
5. `TransferEvent.ResponseSent`: A response is sent.
6. `TransferEvent.Redirect`: This event prompts to redirect the user to the given Redirect URI.
Get the Redirect URI from `event.redirectUri`. This event maybe be returned when OpenId4Vp is
@@ -497,21 +498,20 @@ val transferEventListener = TransferEvent.Listener { event ->
}
is TransferEvent.RequestReceived -> {
- // event when a request is received. Get the request from event.request
- // use the received request to generate the appropriate response
+ // event when a request is received. Get the parsed request from event.requestedDocumentData.
+ // use the received request and send the appropriate response by providing the disclosed documents.
val disclosedDocuments = DisclosedDocuments(
listOf(
// add the disclosed documents here
)
)
- when (val responseResult = transferManager.createResponse(disclosedDocuments)) {
+ when (val responseResult = EudiWallet.sendResponse(disclosedDocuments)) {
is ResponseResult.Failure -> {
// handle the failure
}
- is ResponseResult.Response -> {
- val responseBytes = responseResult.bytes
- EudiWallet.sendResponse(responseBytes)
+ is ResponseResult.Success -> {
+ // response has been send successfully
}
is ResponseResult.UserAuthRequired -> {
// user authentication is required. Get the crypto object from responseResult.cryptoObject
@@ -573,32 +573,14 @@ EudiWallet.addTransferEventListener(transferEventListener)
```
2. BLE transfer using NFC Engagement
- In order to use NFC, you must create a service that extends `NfcEngagementService` and override
- the `transferManager` property.
-
- For example:
-
- ```kotlin
- package com.example.myapp
-
- import eu.europa.ec.eudi.iso18013.transfer.TransferManager
- import eu.europa.ec.eudi.iso18013.transfer.engagement.NfcEngagementService
- import eu.europa.ec.eudi.wallet.EudiWallet
-
- class NfcEngagementServiceImpl : NfcEngagementService() {
- override val transferManager: TransferManager
- get() = EudiWallet.transferManager
- }
- ```
-
- Then add the service to your application's manifest file, like shown below:
+In order to use NFC for engagement, you must add the service `DefaultNfcEngagementService` to your application's manifest file, like shown below:
```xml
@@ -613,38 +595,28 @@ EudiWallet.addTransferEventListener(transferEventListener)
```
- You can enable or disable the NFC device engagement in your app by calling the `enable()`
- and `disable()` methods of the `NfcEngagementService` class.
+ You can enable or disable the NFC engagement in your app by calling the `EudiWallet.enable(Activity)`
+ and `EudiWallet.disable(Activity)` methods.
- In the example below, the NFC device engagement is enabled when activity is resumed and disabled
+ In the example below, the NFC engagement is enabled when activity is resumed and disabled
when the activity is paused.
```kotlin
import androidx.appcompat.app.AppCompatActivity
- import eu.europa.ec.eudi.iso18013.transfer.engagement.NfcEngagementService
class MainActivity : AppCompatActivity() {
override fun onResume() {
super.onResume()
- NfcEngagementService.enable(this)
+ EudiWallet.enable(this)
}
override fun onPause() {
super.onPause()
- NfcEngagementService.disable(this)
+ EudiWallet.disable(this)
}
}
```
- Optionally, in the `enable()` method you can define your class that
- implements `NfcEngagementService`, e.g.:
-
- ```kotlin
- NfcEngagementService.enable(this, NfcEngagementServiceImpl::class.java)
- ```
-
- This way, you can define the `NfcEngagementServiceImpl` service to be preferred while this
- activity is in the foreground.
3. RestAPI using app link
@@ -663,11 +635,11 @@ EudiWallet.addTransferEventListener(transferEventListener)
and set `launchMode="singleTask"` for this activity.
To initiate the transfer using an app link (reverse engagement), use
- the `EudiWallet.startEngagementToApp(Intent)` method.
+ the `EudiWallet.startEngagementFromIntent(Intent)` method.
The method receives as a parameter an `Intent` that contains the data for the device engagement.
- The example below demonstrates how to use the `EudiWallet.startEngagementToApp(Intent)` method
+ The example below demonstrates how to use the `EudiWallet.startEngagementFromIntent(Intent)` method
to initiate the device engagement and transfer.
```kotlin
@@ -677,12 +649,12 @@ EudiWallet.addTransferEventListener(transferEventListener)
override fun onResume() {
super.onResume()
- EudiWallet.startEngagementToApp(intent)
+ EudiWallet.startEngagementFromIntent(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
- EudiWallet.startEngagementToApp(intent)
+ EudiWallet.startEngagementFromIntent(intent)
}
}
```
@@ -690,11 +662,10 @@ EudiWallet.addTransferEventListener(transferEventListener)
4. OpenID4VP
To use the OpenID4VP functionality, the configuration that is used to initialize the library
- must contain the `openId4VpVerifierApiUri`. See
- the [Initialize the library](#initialize-the-library) section.
+ must contain the `openId4VpConfig`. See the [Initialize the library](#initialize-the-library) section.
Then, declare to your app's manifest file (AndroidManifest.xml) the following Intent Filters for
- your MainActivity:
+ your MainActivity, for the scheme:
```xml
@@ -707,9 +678,8 @@ EudiWallet.addTransferEventListener(transferEventListener)
Also set `launchMode="singleTask"` for this activity.
- Then your MainActivity use the `EudiWallet.openId4vpManager` property to get
- the `OpenId4VpManager` object and use it to initiate the transfer, as shown in the example
- below:
+ To receive events for the Openid4VP transfer process, you must attach a `TransferEvent.Listener`,
+ as in the following example:
```kotlin
import android.content.Intent
@@ -726,32 +696,26 @@ EudiWallet.addTransferEventListener(transferEventListener)
val transferEventListener = TransferEvent.Listener { event ->
when (event) {
is TransferEvent.RequestReceived -> {
- val disclosedDocuments = DisclosedDocuments(
- listOf(
- // get disclosed documents from user
- )
- )
- val result = EudiWallet.createResponse(disclosedDocuments)
- when (result) {
- is ResponseResult.Response -> {
- EudiWallet.openId4vpManager.sendResponse(result.bytes)
- EudiWallet.openId4vpManager.close()
- }
- is ResponseResult.UserAuthRequired -> {
- // perform user authentication
- // and try send data again
- }
-
- is ResponseResult.Failure -> {
- val cause = result.throwable
- // handle failure
-
- // close connection
- EudiWallet.openId4vpManager.close()
- }
- }
-
- }
+ // event when a request is received. Get the parsed request from event.requestedDocumentData.
+ // use the received request to send the appropriate response by defining the disclosed documents.
+ val disclosedDocuments = DisclosedDocuments(
+ listOf(
+ // add the disclosed documents here
+ )
+ )
+ when (val responseResult = EudiWallet.sendResponse(disclosedDocuments)) {
+ is ResponseResult.Failure -> {
+ // handle the failure
+ }
+ is ResponseResult.Success -> {
+ // response has been send successfully
+ }
+ is ResponseResult.UserAuthRequired -> {
+ // user authentication is required. Get the crypto object from responseResult.cryptoObject
+ val cryptoObject = responseResult.cryptoObject
+ }
+ }
+ }
else -> {
// rest of event handling
@@ -762,7 +726,7 @@ EudiWallet.addTransferEventListener(transferEventListener)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
- EudiWallet.openId4vpManager.addTransferEventListener(transferEventListener)
+ EudiWallet.addTransferEventListener(transferEventListener)
}
override fun onResume() {
@@ -778,7 +742,7 @@ EudiWallet.addTransferEventListener(transferEventListener)
private fun handleOpenId4VpIntent(intent: Intent) {
when (intent.scheme) {
- "mdoc-openid4vp" -> EudiWallet.openId4vpManager.resolveRequestUri(intent.toUri(0))
+ "mdoc-openid4vp" -> EudiWallet.startEngagementFromIntent(intent)
else -> {
// do nothing
}
@@ -786,39 +750,30 @@ EudiWallet.addTransferEventListener(transferEventListener)
}
}
```
-
- You can also specify an `executor` to the `OpenId4VpManager` using `setExecutor` method.
- Setting the `executor` is optional and defines the executor that will be used to
- execute the callback. If the `executor` is not defined, the callback will be executed on the
- main thread.
#### Receiving request and sending response
-When a request is received, the `TransferEvent.RequestReceived` event is triggered. The request can
-be retrieved from `event.request`.
+When a request is received, the `TransferEvent.RequestReceived` event is triggered. The parsed request can
+be retrieved from `event.requestedDocumentData`, while the initial request, as received by the verifier,
+can be retrieved from `event.request`.
-The request contains a list of `RequestedDocument` objects, which can be used to show the user what
+The parsed request contains a list of `RequestedDocument` objects, which can be used to show the user what
documents are requested. Also, a selectively disclosure option can be implemented using the
requested documents, so user can choose which of the documents to share.
Then, a `DisclosedDocuments` object must be created with the list of documents to be disclosed and
-hhe response can be created using the `EudiWallet.createResponse(DisclosedDocuments)` method.
+the response can be sent using the `EudiWallet.sendResponse(DisclosedDocuments)` method.
The method returns a `ResponseResult` object, which can be one of the following:
1. `ResponseResult.Failure`: The response creation failed. The error can be retrieved from
`responseResult.error`.
-2. `ResponseResult.Response`: The response was created successfully. The response bytes can be
- retrieved from `responseResult.bytes`.
+2. `ResponseResult.Success`: The response has been sent successfully.
3. `ResponseResult.UserAuthRequired`: The response creation requires user authentication. The
`CryptoObject` can be retrieved from `responseResult.cryptoObject`. After success authentication
- the response can be created again, using the `EudiWallet.createResponse(DisclosedDocuments)`
+ the response can be sent again, using the `EudiWallet.sendResponse(DisclosedDocuments)`
method.
-Finally, when `createResponse(DisclosedDocuments)` returns a `ResponseResult.Response`, the response
-can be sent using the `EudiWallet.sendResponse(ByteArray)` method, by getting the response
-bytes from `responseResult.bytes`.
-
The following example demonstrates the above steps:
```kotlin
@@ -827,21 +782,20 @@ val transferEventListener = TransferEvent.Listener { event ->
when (event) {
is TransferEvent.RequestReceived -> {
- // event when a request is received. Get the request from event.request
- // use the received request to generate the appropriate response
+ // event when a request is received. Get the parsed request from event.requestedDocumentData
+ // send the response
val disclosedDocuments = DisclosedDocuments(
listOf(
// add the disclosed documents here
)
)
- when (val responseResult = EudiWallet.createResponse(disclosedDocuments)) {
+ when (val responseResult = EudiWallet.sendResponse(disclosedDocuments)) {
is ResponseResult.Failure -> {
// handle the failure
}
- is ResponseResult.Response -> {
- val responseBytes = responseResult.bytes
- EudiWallet.sendResponse(responseBytes)
+ is ResponseResult.Success -> {
+ // the response has been sent successfully
}
is ResponseResult.UserAuthRequired -> {
// user authentication is required. Get the crypto object from responseResult.cryptoObject
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.document.issue.openid4vci/-open-id4-vci-authorize-activity/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.document.issue.openid4vci/-open-id4-vci-authorize-activity/index.md
index c1418672..1f3c065c 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.document.issue.openid4vci/-open-id4-vci-authorize-activity/index.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.document.issue.openid4vci/-open-id4-vci-authorize-activity/index.md
@@ -24,35 +24,35 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [addOnPictureInPictureModeChangedListener](index.md#892913762%2FFunctions%2F1615067946) | [androidJvm]
override fun [addOnPictureInPictureModeChangedListener](index.md#892913762%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Consumer](https://developer.android.com/reference/kotlin/androidx/core/util/Consumer.html)<[PictureInPictureModeChangedInfo](https://developer.android.com/reference/kotlin/androidx/core/app/PictureInPictureModeChangedInfo.html)>) |
| [addOnTrimMemoryListener](index.md#-94317946%2FFunctions%2F1615067946) | [androidJvm]
override fun [addOnTrimMemoryListener](index.md#-94317946%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Consumer](https://developer.android.com/reference/kotlin/androidx/core/util/Consumer.html)<[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)>) |
| [applyOverrideConfiguration](index.md#1950433422%2FFunctions%2F1615067946) | [androidJvm]
open fun [applyOverrideConfiguration](index.md#1950433422%2FFunctions%2F1615067946)(p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)) |
-| [bindIsolatedService](index.md#-936523269%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindIsolatedService](index.md#-936523269%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p3: [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html), p4: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [bindService](index.md#2022335150%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindService](index.md#2022335150%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
open override fun [bindService](index.md#-764880913%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html), p3: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [bindServiceAsUser](index.md#-365950384%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindServiceAsUser](index.md#-365950384%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [checkCallingOrSelfPermission](index.md#-315710025%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfPermission](index.md#-315710025%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [checkCallingOrSelfUriPermission](index.md#832829402%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfUriPermission](index.md#832829402%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [checkCallingOrSelfUriPermissions](index.md#-1013919811%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfUriPermissions](index.md#-1013919811%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
-| [checkCallingPermission](index.md#893466952%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingPermission](index.md#893466952%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [checkCallingUriPermission](index.md#1348946283%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingUriPermission](index.md#1348946283%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [checkCallingUriPermissions](index.md#1966715980%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingUriPermissions](index.md#1966715980%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
-| [checkPermission](index.md#-1698615512%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkPermission](index.md#-1698615512%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [checkSelfPermission](index.md#1389999028%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkSelfPermission](index.md#1389999028%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [checkUriPermission](index.md#2104701707%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkUriPermission](index.md#2104701707%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)
open override fun [checkUriPermission](index.md#1290765996%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)?, p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [checkUriPermissions](index.md#-1934262484%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkUriPermissions](index.md#-1934262484%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
-| [clearWallpaper](index.md#-1564108334%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~clearWallpaper~~](index.md#-1564108334%2FFunctions%2F1615067946)() |
+| [bindIsolatedService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-936523269%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindIsolatedService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-936523269%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p3: [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html), p4: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [bindService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#2022335150%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#2022335150%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
open override fun [bindService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-764880913%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html), p3: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [bindServiceAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-365950384%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindServiceAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-365950384%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [checkCallingOrSelfPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-315710025%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-315710025%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingOrSelfUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#832829402%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#832829402%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingOrSelfUriPermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1013919811%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfUriPermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1013919811%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
+| [checkCallingPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#893466952%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#893466952%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1348946283%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1348946283%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingUriPermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1966715980%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingUriPermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1966715980%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
+| [checkPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1698615512%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1698615512%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkSelfPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1389999028%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkSelfPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1389999028%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#2104701707%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#2104701707%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)
open override fun [checkUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1290765996%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)?, p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkUriPermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1934262484%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkUriPermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1934262484%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
+| [clearWallpaper](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1564108334%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~clearWallpaper~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1564108334%2FFunctions%2F1615067946)() |
| [closeContextMenu](index.md#1442022420%2FFunctions%2F1615067946) | [androidJvm]
open fun [closeContextMenu](index.md#1442022420%2FFunctions%2F1615067946)() |
| [closeOptionsMenu](index.md#-1220759843%2FFunctions%2F1615067946) | [androidJvm]
open override fun [closeOptionsMenu](index.md#-1220759843%2FFunctions%2F1615067946)() |
-| [createAttributionContext](index.md#1250560058%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createAttributionContext](index.md#1250560058%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [createConfigurationContext](index.md#-1154826084%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createConfigurationContext](index.md#-1154826084%2FFunctions%2F1615067946)(p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [createContext](index.md#1358229057%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createContext](index.md#1358229057%2FFunctions%2F1615067946)(p0: [ContextParams](https://developer.android.com/reference/kotlin/android/content/ContextParams.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [createContextForSplit](index.md#1654585621%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createContextForSplit](index.md#1654585621%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [createDeviceProtectedStorageContext](index.md#-2131343837%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createDeviceProtectedStorageContext](index.md#-2131343837%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [createDisplayContext](index.md#-296982170%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createDisplayContext](index.md#-296982170%2FFunctions%2F1615067946)(p0: [Display](https://developer.android.com/reference/kotlin/android/view/Display.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [createPackageContext](index.md#212314043%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createPackageContext](index.md#212314043%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createAttributionContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1250560058%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createAttributionContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1250560058%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createConfigurationContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1154826084%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createConfigurationContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1154826084%2FFunctions%2F1615067946)(p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1358229057%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1358229057%2FFunctions%2F1615067946)(p0: [ContextParams](https://developer.android.com/reference/kotlin/android/content/ContextParams.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createContextForSplit](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1654585621%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createContextForSplit](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1654585621%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createDeviceProtectedStorageContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2131343837%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createDeviceProtectedStorageContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2131343837%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createDisplayContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-296982170%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createDisplayContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-296982170%2FFunctions%2F1615067946)(p0: [Display](https://developer.android.com/reference/kotlin/android/view/Display.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createPackageContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#212314043%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createPackageContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#212314043%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
| [createPendingResult](index.md#-286030396%2FFunctions%2F1615067946) | [androidJvm]
open fun [createPendingResult](index.md#-286030396%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [PendingIntent](https://developer.android.com/reference/kotlin/android/app/PendingIntent.html) |
-| [createWindowContext](index.md#-1685281025%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createWindowContext](index.md#-1685281025%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)
open override fun [createWindowContext](index.md#291506760%2FFunctions%2F1615067946)(p0: [Display](https://developer.android.com/reference/kotlin/android/view/Display.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [databaseList](index.md#-2015717810%2FFunctions%2F1615067946) | [androidJvm]
open override fun [databaseList](index.md#-2015717810%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> |
-| [deleteDatabase](index.md#1521633731%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteDatabase](index.md#1521633731%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [deleteFile](index.md#-1794089596%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteFile](index.md#-1794089596%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [deleteSharedPreferences](index.md#-1249690503%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteSharedPreferences](index.md#-1249690503%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [createWindowContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1685281025%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createWindowContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1685281025%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)
open override fun [createWindowContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#291506760%2FFunctions%2F1615067946)(p0: [Display](https://developer.android.com/reference/kotlin/android/view/Display.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [databaseList](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2015717810%2FFunctions%2F1615067946) | [androidJvm]
open override fun [databaseList](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2015717810%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> |
+| [deleteDatabase](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1521633731%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteDatabase](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1521633731%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [deleteFile](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1794089596%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteFile](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1794089596%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [deleteSharedPreferences](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1249690503%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteSharedPreferences](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1249690503%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [dismissDialog](index.md#-115118948%2FFunctions%2F1615067946) | [androidJvm]
fun [~~dismissDialog~~](index.md#-115118948%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
| [dismissKeyboardShortcutsHelper](index.md#-819509184%2FFunctions%2F1615067946) | [androidJvm]
fun [dismissKeyboardShortcutsHelper](index.md#-819509184%2FFunctions%2F1615067946)() |
| [dispatchGenericMotionEvent](index.md#-1136387127%2FFunctions%2F1615067946) | [androidJvm]
open override fun [dispatchGenericMotionEvent](index.md#-1136387127%2FFunctions%2F1615067946)(p0: [MotionEvent](https://developer.android.com/reference/kotlin/android/view/MotionEvent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
@@ -62,14 +62,14 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [dispatchTouchEvent](index.md#1308980251%2FFunctions%2F1615067946) | [androidJvm]
open override fun [dispatchTouchEvent](index.md#1308980251%2FFunctions%2F1615067946)(p0: [MotionEvent](https://developer.android.com/reference/kotlin/android/view/MotionEvent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [dispatchTrackballEvent](index.md#-639240474%2FFunctions%2F1615067946) | [androidJvm]
open override fun [dispatchTrackballEvent](index.md#-639240474%2FFunctions%2F1615067946)(p0: [MotionEvent](https://developer.android.com/reference/kotlin/android/view/MotionEvent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [dump](index.md#1193062016%2FFunctions%2F1615067946) | [androidJvm]
open override fun [dump](index.md#1193062016%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p1: [FileDescriptor](https://developer.android.com/reference/kotlin/java/io/FileDescriptor.html)?, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [PrintWriter](https://developer.android.com/reference/kotlin/java/io/PrintWriter.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p3: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>?) |
-| [enforceCallingOrSelfPermission](index.md#-373876383%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingOrSelfPermission](index.md#-373876383%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
-| [enforceCallingOrSelfUriPermission](index.md#1996391077%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingOrSelfUriPermission](index.md#1996391077%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
-| [enforceCallingPermission](index.md#577330480%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingPermission](index.md#577330480%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
-| [enforceCallingUriPermission](index.md#370165494%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingUriPermission](index.md#370165494%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
-| [enforcePermission](index.md#-1911070116%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforcePermission](index.md#-1911070116%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
-| [enforceUriPermission](index.md#-2129139702%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceUriPermission](index.md#-2129139702%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html))
open override fun [enforceUriPermission](index.md#355973580%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)?, p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [enforceCallingOrSelfPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-373876383%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingOrSelfPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-373876383%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [enforceCallingOrSelfUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1996391077%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingOrSelfUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1996391077%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
+| [enforceCallingPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#577330480%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#577330480%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [enforceCallingUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#370165494%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#370165494%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
+| [enforcePermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1911070116%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforcePermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1911070116%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [enforceUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2129139702%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2129139702%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html))
open override fun [enforceUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#355973580%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)?, p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
| [enterPictureInPictureMode](index.md#-1210453766%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~enterPictureInPictureMode~~](index.md#-1210453766%2FFunctions%2F1615067946)()
open fun [enterPictureInPictureMode](index.md#-248336243%2FFunctions%2F1615067946)(p0: [PictureInPictureParams](https://developer.android.com/reference/kotlin/android/app/PictureInPictureParams.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [fileList](index.md#1346241261%2FFunctions%2F1615067946) | [androidJvm]
open override fun [fileList](index.md#1346241261%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> |
+| [fileList](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1346241261%2FFunctions%2F1615067946) | [androidJvm]
open override fun [fileList](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1346241261%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> |
| [findViewById](index.md#-1527164432%2FFunctions%2F1615067946) | [androidJvm]
open override fun <[T](index.md#-1527164432%2FFunctions%2F1615067946) : [View](https://developer.android.com/reference/kotlin/android/view/View.html)> [findViewById](index.md#-1527164432%2FFunctions%2F1615067946)(@[IdRes](https://developer.android.com/reference/kotlin/androidx/annotation/IdRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [T](index.md#-1527164432%2FFunctions%2F1615067946) |
| [finish](index.md#1048858871%2FFunctions%2F1615067946) | [androidJvm]
open fun [finish](index.md#1048858871%2FFunctions%2F1615067946)() |
| [finishActivity](index.md#-1038546362%2FFunctions%2F1615067946) | [androidJvm]
open fun [finishActivity](index.md#-1038546362%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
@@ -81,42 +81,42 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [getActionBar](index.md#-2108225789%2FFunctions%2F1615067946) | [androidJvm]
open fun [getActionBar](index.md#-2108225789%2FFunctions%2F1615067946)(): [ActionBar](https://developer.android.com/reference/kotlin/android/app/ActionBar.html)? |
| [getActivityResultRegistry](index.md#706283228%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun [getActivityResultRegistry](index.md#706283228%2FFunctions%2F1615067946)(): [ActivityResultRegistry](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultRegistry.html) |
| [getApplication](index.md#1526237776%2FFunctions%2F1615067946) | [androidJvm]
fun [getApplication](index.md#1526237776%2FFunctions%2F1615067946)(): [Application](https://developer.android.com/reference/kotlin/android/app/Application.html) |
-| [getApplicationContext](index.md#720574270%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getApplicationContext](index.md#720574270%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [getApplicationInfo](index.md#875309695%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getApplicationInfo](index.md#875309695%2FFunctions%2F1615067946)(): [ApplicationInfo](https://developer.android.com/reference/kotlin/android/content/pm/ApplicationInfo.html) |
+| [getApplicationContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#720574270%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getApplicationContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#720574270%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [getApplicationInfo](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#875309695%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getApplicationInfo](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#875309695%2FFunctions%2F1615067946)(): [ApplicationInfo](https://developer.android.com/reference/kotlin/android/content/pm/ApplicationInfo.html) |
| [getAssets](index.md#-1028304091%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAssets](index.md#-1028304091%2FFunctions%2F1615067946)(): [AssetManager](https://developer.android.com/reference/kotlin/android/content/res/AssetManager.html) |
-| [getAttributionSource](index.md#745115299%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAttributionSource](index.md#745115299%2FFunctions%2F1615067946)(): [AttributionSource](https://developer.android.com/reference/kotlin/android/content/AttributionSource.html) |
-| [getAttributionTag](index.md#-2059689374%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAttributionTag](index.md#-2059689374%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? |
-| [getBaseContext](index.md#1836627711%2FFunctions%2F1615067946) | [androidJvm]
open fun [getBaseContext](index.md#1836627711%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
-| [getCacheDir](index.md#-803358382%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getCacheDir](index.md#-803358382%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getAttributionSource](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#745115299%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAttributionSource](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#745115299%2FFunctions%2F1615067946)(): [AttributionSource](https://developer.android.com/reference/kotlin/android/content/AttributionSource.html) |
+| [getAttributionTag](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2059689374%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAttributionTag](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2059689374%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? |
+| [getBaseContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1836627711%2FFunctions%2F1615067946) | [androidJvm]
open fun [getBaseContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1836627711%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [getCacheDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-803358382%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getCacheDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-803358382%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
| [getCallingActivity](index.md#-2093832307%2FFunctions%2F1615067946) | [androidJvm]
open fun [getCallingActivity](index.md#-2093832307%2FFunctions%2F1615067946)(): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)? |
| [getCallingPackage](index.md#-1745389992%2FFunctions%2F1615067946) | [androidJvm]
open fun [getCallingPackage](index.md#-1745389992%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? |
| [getChangingConfigurations](index.md#-1601610448%2FFunctions%2F1615067946) | [androidJvm]
open fun [getChangingConfigurations](index.md#-1601610448%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [getClassLoader](index.md#1242041746%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getClassLoader](index.md#1242041746%2FFunctions%2F1615067946)(): [ClassLoader](https://developer.android.com/reference/kotlin/java/lang/ClassLoader.html) |
-| [getCodeCacheDir](index.md#1138511077%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getCodeCacheDir](index.md#1138511077%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
-| [getColor](index.md#1612713529%2FFunctions%2F1615067946) | [androidJvm]
fun [getColor](index.md#1612713529%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [getColorStateList](index.md#49622702%2FFunctions%2F1615067946) | [androidJvm]
fun [getColorStateList](index.md#49622702%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [ColorStateList](https://developer.android.com/reference/kotlin/android/content/res/ColorStateList.html) |
+| [getClassLoader](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1242041746%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getClassLoader](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1242041746%2FFunctions%2F1615067946)(): [ClassLoader](https://developer.android.com/reference/kotlin/java/lang/ClassLoader.html) |
+| [getCodeCacheDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1138511077%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getCodeCacheDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1138511077%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getColor](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1612713529%2FFunctions%2F1615067946) | [androidJvm]
fun [getColor](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1612713529%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [getColorStateList](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#49622702%2FFunctions%2F1615067946) | [androidJvm]
fun [getColorStateList](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#49622702%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [ColorStateList](https://developer.android.com/reference/kotlin/android/content/res/ColorStateList.html) |
| [getComponentName](index.md#-1710268232%2FFunctions%2F1615067946) | [androidJvm]
open fun [getComponentName](index.md#-1710268232%2FFunctions%2F1615067946)(): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html) |
-| [getContentResolver](index.md#-1924753378%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getContentResolver](index.md#-1924753378%2FFunctions%2F1615067946)(): [ContentResolver](https://developer.android.com/reference/kotlin/android/content/ContentResolver.html) |
+| [getContentResolver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1924753378%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getContentResolver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1924753378%2FFunctions%2F1615067946)(): [ContentResolver](https://developer.android.com/reference/kotlin/android/content/ContentResolver.html) |
| [getContentScene](index.md#261968391%2FFunctions%2F1615067946) | [androidJvm]
open fun [getContentScene](index.md#261968391%2FFunctions%2F1615067946)(): [Scene](https://developer.android.com/reference/kotlin/android/transition/Scene.html) |
| [getContentTransitionManager](index.md#1914863227%2FFunctions%2F1615067946) | [androidJvm]
open fun [getContentTransitionManager](index.md#1914863227%2FFunctions%2F1615067946)(): [TransitionManager](https://developer.android.com/reference/kotlin/android/transition/TransitionManager.html) |
| [getCurrentFocus](index.md#-1699869637%2FFunctions%2F1615067946) | [androidJvm]
open fun [getCurrentFocus](index.md#-1699869637%2FFunctions%2F1615067946)(): [View](https://developer.android.com/reference/kotlin/android/view/View.html)? |
-| [getDatabasePath](index.md#1182335943%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDatabasePath](index.md#1182335943%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
-| [getDataDir](index.md#666732474%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDataDir](index.md#666732474%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getDatabasePath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1182335943%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDatabasePath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1182335943%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getDataDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#666732474%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDataDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#666732474%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
| [getDefaultViewModelCreationExtras](index.md#-2144828544%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
@[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper.html)
open override fun [getDefaultViewModelCreationExtras](index.md#-2144828544%2FFunctions%2F1615067946)(): [CreationExtras](https://developer.android.com/reference/kotlin/androidx/lifecycle/viewmodel/CreationExtras.html) |
| [getDefaultViewModelProviderFactory](index.md#932761855%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getDefaultViewModelProviderFactory](index.md#932761855%2FFunctions%2F1615067946)(): [ViewModelProvider.Factory](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory.html) |
| [getDelegate](index.md#1783008893%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getDelegate](index.md#1783008893%2FFunctions%2F1615067946)(): [AppCompatDelegate](https://developer.android.com/reference/kotlin/androidx/appcompat/app/AppCompatDelegate.html) |
-| [getDir](index.md#264472777%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDir](index.md#264472777%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
-| [getDisplay](index.md#488073307%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDisplay](index.md#488073307%2FFunctions%2F1615067946)(): [Display](https://developer.android.com/reference/kotlin/android/view/Display.html)? |
-| [getDrawable](index.md#-953197380%2FFunctions%2F1615067946) | [androidJvm]
fun [getDrawable](index.md#-953197380%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html)? |
+| [getDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#264472777%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#264472777%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getDisplay](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#488073307%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDisplay](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#488073307%2FFunctions%2F1615067946)(): [Display](https://developer.android.com/reference/kotlin/android/view/Display.html)? |
+| [getDrawable](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-953197380%2FFunctions%2F1615067946) | [androidJvm]
fun [getDrawable](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-953197380%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html)? |
| [getDrawerToggleDelegate](index.md#-921690152%2FFunctions%2F1615067946) | [androidJvm]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open override fun [getDrawerToggleDelegate](index.md#-921690152%2FFunctions%2F1615067946)(): [ActionBarDrawerToggle.Delegate](https://developer.android.com/reference/kotlin/androidx/appcompat/app/ActionBarDrawerToggle.Delegate.html)? |
-| [getExternalCacheDir](index.md#544398023%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalCacheDir](index.md#544398023%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html)? |
-| [getExternalCacheDirs](index.md#1262724320%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalCacheDirs](index.md#1262724320%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
-| [getExternalFilesDir](index.md#-1987272293%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalFilesDir](index.md#-1987272293%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?): [File](https://developer.android.com/reference/kotlin/java/io/File.html)? |
-| [getExternalFilesDirs](index.md#-2070683431%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalFilesDirs](index.md#-2070683431%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
-| [getExternalMediaDirs](index.md#1078368190%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalMediaDirs](index.md#1078368190%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getExternalCacheDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#544398023%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalCacheDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#544398023%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html)? |
+| [getExternalCacheDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1262724320%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalCacheDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1262724320%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getExternalFilesDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1987272293%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalFilesDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1987272293%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?): [File](https://developer.android.com/reference/kotlin/java/io/File.html)? |
+| [getExternalFilesDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2070683431%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalFilesDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2070683431%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getExternalMediaDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1078368190%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalMediaDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1078368190%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
| [getExtraData](index.md#1645840591%2FFunctions%2F1615067946) | [androidJvm]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
open fun <[T](index.md#1645840591%2FFunctions%2F1615067946) : [ComponentActivity.ExtraData](https://developer.android.com/reference/kotlin/androidx/core/app/ComponentActivity.ExtraData.html)> [~~getExtraData~~](index.md#1645840591%2FFunctions%2F1615067946)(p0: [Class](https://developer.android.com/reference/kotlin/java/lang/Class.html)<[T](index.md#1645840591%2FFunctions%2F1615067946)>): [T](index.md#1645840591%2FFunctions%2F1615067946) |
-| [getFilesDir](index.md#-2018610489%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getFilesDir](index.md#-2018610489%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
-| [getFileStreamPath](index.md#-1523976920%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getFileStreamPath](index.md#-1523976920%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getFilesDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2018610489%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getFilesDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2018610489%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getFileStreamPath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1523976920%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getFileStreamPath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1523976920%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
| [getFragmentManager](index.md#1444016003%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~getFragmentManager~~](index.md#1444016003%2FFunctions%2F1615067946)(): [FragmentManager](https://developer.android.com/reference/kotlin/android/app/FragmentManager.html) |
| [getIntent](index.md#-1000759074%2FFunctions%2F1615067946) | [androidJvm]
open fun [getIntent](index.md#-1000759074%2FFunctions%2F1615067946)(): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html) |
| [getLastCustomNonConfigurationInstance](index.md#1865555744%2FFunctions%2F1615067946) | [androidJvm]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [~~getLastCustomNonConfigurationInstance~~](index.md#1865555744%2FFunctions%2F1615067946)(): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? |
@@ -125,22 +125,22 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [getLifecycle](index.md#-363549909%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getLifecycle](index.md#-363549909%2FFunctions%2F1615067946)(): [Lifecycle](https://developer.android.com/reference/kotlin/androidx/lifecycle/Lifecycle.html) |
| [getLoaderManager](index.md#2145988102%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~getLoaderManager~~](index.md#2145988102%2FFunctions%2F1615067946)(): [LoaderManager](https://developer.android.com/reference/kotlin/android/app/LoaderManager.html) |
| [getLocalClassName](index.md#-376937214%2FFunctions%2F1615067946) | [androidJvm]
open fun [getLocalClassName](index.md#-376937214%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [getMainExecutor](index.md#1205639281%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getMainExecutor](index.md#1205639281%2FFunctions%2F1615067946)(): [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html) |
-| [getMainLooper](index.md#400244339%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getMainLooper](index.md#400244339%2FFunctions%2F1615067946)(): [Looper](https://developer.android.com/reference/kotlin/android/os/Looper.html) |
+| [getMainExecutor](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1205639281%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getMainExecutor](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1205639281%2FFunctions%2F1615067946)(): [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html) |
+| [getMainLooper](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#400244339%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getMainLooper](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#400244339%2FFunctions%2F1615067946)(): [Looper](https://developer.android.com/reference/kotlin/android/os/Looper.html) |
| [getMaxNumPictureInPictureActions](index.md#-1704478464%2FFunctions%2F1615067946) | [androidJvm]
open fun [getMaxNumPictureInPictureActions](index.md#-1704478464%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
| [getMediaController](index.md#-1703977600%2FFunctions%2F1615067946) | [androidJvm]
fun [getMediaController](index.md#-1703977600%2FFunctions%2F1615067946)(): [MediaController](https://developer.android.com/reference/kotlin/android/media/session/MediaController.html) |
| [getMenuInflater](index.md#13623128%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getMenuInflater](index.md#13623128%2FFunctions%2F1615067946)(): [MenuInflater](https://developer.android.com/reference/kotlin/android/view/MenuInflater.html) |
-| [getNoBackupFilesDir](index.md#1811406884%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getNoBackupFilesDir](index.md#1811406884%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
-| [getObbDir](index.md#252787007%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getObbDir](index.md#252787007%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
-| [getObbDirs](index.md#812717416%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getObbDirs](index.md#812717416%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getNoBackupFilesDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1811406884%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getNoBackupFilesDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1811406884%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getObbDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#252787007%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getObbDir](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#252787007%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getObbDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#812717416%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getObbDirs](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#812717416%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
| [getOnBackInvokedDispatcher](index.md#-1524217389%2FFunctions%2F1615067946) | [androidJvm]
open fun [getOnBackInvokedDispatcher](index.md#-1524217389%2FFunctions%2F1615067946)(): [OnBackInvokedDispatcher](https://developer.android.com/reference/kotlin/android/window/OnBackInvokedDispatcher.html) |
| [getOnBackPressedDispatcher](index.md#1039536402%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun [getOnBackPressedDispatcher](index.md#1039536402%2FFunctions%2F1615067946)(): [OnBackPressedDispatcher](https://developer.android.com/reference/kotlin/androidx/activity/OnBackPressedDispatcher.html) |
-| [getOpPackageName](index.md#-814243443%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getOpPackageName](index.md#-814243443%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [getPackageCodePath](index.md#-1681869883%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageCodePath](index.md#-1681869883%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [getPackageManager](index.md#224992758%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageManager](index.md#224992758%2FFunctions%2F1615067946)(): [PackageManager](https://developer.android.com/reference/kotlin/android/content/pm/PackageManager.html) |
-| [getPackageName](index.md#-1158183924%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageName](index.md#-1158183924%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [getPackageResourcePath](index.md#512700484%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageResourcePath](index.md#512700484%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
-| [getParams](index.md#-417920553%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getParams](index.md#-417920553%2FFunctions%2F1615067946)(): [ContextParams](https://developer.android.com/reference/kotlin/android/content/ContextParams.html)? |
+| [getOpPackageName](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-814243443%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getOpPackageName](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-814243443%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getPackageCodePath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1681869883%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageCodePath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1681869883%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getPackageManager](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#224992758%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageManager](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#224992758%2FFunctions%2F1615067946)(): [PackageManager](https://developer.android.com/reference/kotlin/android/content/pm/PackageManager.html) |
+| [getPackageName](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1158183924%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageName](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1158183924%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getPackageResourcePath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#512700484%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageResourcePath](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#512700484%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getParams](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-417920553%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getParams](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-417920553%2FFunctions%2F1615067946)(): [ContextParams](https://developer.android.com/reference/kotlin/android/content/ContextParams.html)? |
| [getParent](index.md#-78472560%2FFunctions%2F1615067946) | [androidJvm]
fun [getParent](index.md#-78472560%2FFunctions%2F1615067946)(): [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html) |
| [getParentActivityIntent](index.md#1492932869%2FFunctions%2F1615067946) | [androidJvm]
open fun [getParentActivityIntent](index.md#1492932869%2FFunctions%2F1615067946)(): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)? |
| [getPreferences](index.md#-427727546%2FFunctions%2F1615067946) | [androidJvm]
open fun [getPreferences](index.md#-427727546%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html) |
@@ -148,29 +148,29 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [getRequestedOrientation](index.md#1038606840%2FFunctions%2F1615067946) | [androidJvm]
open fun [getRequestedOrientation](index.md#1038606840%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
| [getResources](index.md#-404044493%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getResources](index.md#-404044493%2FFunctions%2F1615067946)(): [Resources](https://developer.android.com/reference/kotlin/android/content/res/Resources.html) |
| [getSearchEvent](index.md#-630770%2FFunctions%2F1615067946) | [androidJvm]
fun [getSearchEvent](index.md#-630770%2FFunctions%2F1615067946)(): [SearchEvent](https://developer.android.com/reference/kotlin/android/view/SearchEvent.html) |
-| [getSharedPreferences](index.md#1470789827%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSharedPreferences](index.md#1470789827%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html) |
+| [getSharedPreferences](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1470789827%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSharedPreferences](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1470789827%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html) |
| [getSplashScreen](index.md#-382132249%2FFunctions%2F1615067946) | [androidJvm]
fun [getSplashScreen](index.md#-382132249%2FFunctions%2F1615067946)(): [SplashScreen](https://developer.android.com/reference/kotlin/android/window/SplashScreen.html) |
-| [getString](index.md#-1083071447%2FFunctions%2F1615067946) | [androidJvm]
fun [getString](index.md#-1083071447%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
fun [getString](index.md#1906424039%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), vararg p1: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getString](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1083071447%2FFunctions%2F1615067946) | [androidJvm]
fun [getString](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1083071447%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
fun [getString](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1906424039%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), vararg p1: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
| [getSupportActionBar](index.md#993354804%2FFunctions%2F1615067946) | [androidJvm]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [getSupportActionBar](index.md#993354804%2FFunctions%2F1615067946)(): [ActionBar](https://developer.android.com/reference/kotlin/androidx/appcompat/app/ActionBar.html)? |
| [getSupportFragmentManager](index.md#396613922%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [getSupportFragmentManager](index.md#396613922%2FFunctions%2F1615067946)(): [FragmentManager](https://developer.android.com/reference/kotlin/androidx/fragment/app/FragmentManager.html) |
| [getSupportLoaderManager](index.md#97973093%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open fun [~~getSupportLoaderManager~~](index.md#97973093%2FFunctions%2F1615067946)(): [LoaderManager](https://developer.android.com/reference/kotlin/androidx/loader/app/LoaderManager.html) |
| [getSupportParentActivityIntent](index.md#192054068%2FFunctions%2F1615067946) | [androidJvm]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open override fun [getSupportParentActivityIntent](index.md#192054068%2FFunctions%2F1615067946)(): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)? |
-| [getSystemService](index.md#1869678890%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSystemService](index.md#1869678890%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)
fun <[T](index.md#-1033418729%2FFunctions%2F1615067946) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [getSystemService](index.md#-1033418729%2FFunctions%2F1615067946)(p0: [Class](https://developer.android.com/reference/kotlin/java/lang/Class.html)<[T](index.md#-1033418729%2FFunctions%2F1615067946)>): [T](index.md#-1033418729%2FFunctions%2F1615067946) |
-| [getSystemServiceName](index.md#-1607307550%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSystemServiceName](index.md#-1607307550%2FFunctions%2F1615067946)(p0: [Class](https://developer.android.com/reference/kotlin/java/lang/Class.html)<*>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? |
+| [getSystemService](index.md#1869678890%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSystemService](index.md#1869678890%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)
fun <[T](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1033418729%2FFunctions%2F1615067946) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [getSystemService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1033418729%2FFunctions%2F1615067946)(p0: [Class](https://developer.android.com/reference/kotlin/java/lang/Class.html)<[T](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1033418729%2FFunctions%2F1615067946)>): [T](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1033418729%2FFunctions%2F1615067946) |
+| [getSystemServiceName](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1607307550%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSystemServiceName](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1607307550%2FFunctions%2F1615067946)(p0: [Class](https://developer.android.com/reference/kotlin/java/lang/Class.html)<*>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? |
| [getTaskId](index.md#-1226887558%2FFunctions%2F1615067946) | [androidJvm]
open fun [getTaskId](index.md#-1226887558%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [getText](index.md#-1417941683%2FFunctions%2F1615067946) | [androidJvm]
fun [getText](index.md#-1417941683%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html) |
+| [getText](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1417941683%2FFunctions%2F1615067946) | [androidJvm]
fun [getText](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1417941683%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html) |
| [getTheme](index.md#945814313%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getTheme](index.md#945814313%2FFunctions%2F1615067946)(): [Resources.Theme](https://developer.android.com/reference/kotlin/android/content/res/Resources.Theme.html) |
| [getTitle](index.md#671976584%2FFunctions%2F1615067946) | [androidJvm]
fun [getTitle](index.md#671976584%2FFunctions%2F1615067946)(): [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html) |
| [getTitleColor](index.md#-815012881%2FFunctions%2F1615067946) | [androidJvm]
fun [getTitleColor](index.md#-815012881%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
| [getViewModelStore](index.md#-123874808%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
open override fun [getViewModelStore](index.md#-123874808%2FFunctions%2F1615067946)(): [ViewModelStore](https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelStore.html) |
| [getVoiceInteractor](index.md#819156245%2FFunctions%2F1615067946) | [androidJvm]
open fun [getVoiceInteractor](index.md#819156245%2FFunctions%2F1615067946)(): [VoiceInteractor](https://developer.android.com/reference/kotlin/android/app/VoiceInteractor.html) |
| [getVolumeControlStream](index.md#714135997%2FFunctions%2F1615067946) | [androidJvm]
fun [getVolumeControlStream](index.md#714135997%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [getWallpaper](index.md#-721579237%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaper~~](index.md#-721579237%2FFunctions%2F1615067946)(): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html) |
-| [getWallpaperDesiredMinimumHeight](index.md#-662155776%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaperDesiredMinimumHeight~~](index.md#-662155776%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
-| [getWallpaperDesiredMinimumWidth](index.md#295343597%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaperDesiredMinimumWidth~~](index.md#295343597%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [getWallpaper](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-721579237%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaper~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-721579237%2FFunctions%2F1615067946)(): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html) |
+| [getWallpaperDesiredMinimumHeight](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-662155776%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaperDesiredMinimumHeight~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-662155776%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [getWallpaperDesiredMinimumWidth](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#295343597%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaperDesiredMinimumWidth~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#295343597%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
| [getWindow](index.md#1004659210%2FFunctions%2F1615067946) | [androidJvm]
open fun [getWindow](index.md#1004659210%2FFunctions%2F1615067946)(): [Window](https://developer.android.com/reference/kotlin/android/view/Window.html) |
| [getWindowManager](index.md#-130996765%2FFunctions%2F1615067946) | [androidJvm]
open fun [getWindowManager](index.md#-130996765%2FFunctions%2F1615067946)(): [WindowManager](https://developer.android.com/reference/kotlin/android/view/WindowManager.html) |
-| [grantUriPermission](index.md#715282874%2FFunctions%2F1615067946) | [androidJvm]
open override fun [grantUriPermission](index.md#715282874%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [grantUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#715282874%2FFunctions%2F1615067946) | [androidJvm]
open override fun [grantUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#715282874%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
| [hasWindowFocus](index.md#-27928292%2FFunctions%2F1615067946) | [androidJvm]
open fun [hasWindowFocus](index.md#-27928292%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [invalidateMenu](index.md#-594312987%2FFunctions%2F1615067946) | [androidJvm]
open override fun [invalidateMenu](index.md#-594312987%2FFunctions%2F1615067946)() |
| [invalidateOptionsMenu](index.md#1946521782%2FFunctions%2F1615067946) | [androidJvm]
open override fun [invalidateOptionsMenu](index.md#1946521782%2FFunctions%2F1615067946)() |
@@ -178,25 +178,25 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [isChangingConfigurations](index.md#1931207062%2FFunctions%2F1615067946) | [androidJvm]
open fun [isChangingConfigurations](index.md#1931207062%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isChild](index.md#1947658526%2FFunctions%2F1615067946) | [androidJvm]
fun [isChild](index.md#1947658526%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isDestroyed](index.md#-423188415%2FFunctions%2F1615067946) | [androidJvm]
open fun [isDestroyed](index.md#-423188415%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [isDeviceProtectedStorage](index.md#1565618010%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isDeviceProtectedStorage](index.md#1565618010%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [isDeviceProtectedStorage](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1565618010%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isDeviceProtectedStorage](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1565618010%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isFinishing](index.md#-1522152277%2FFunctions%2F1615067946) | [androidJvm]
open fun [isFinishing](index.md#-1522152277%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isImmersive](index.md#80260575%2FFunctions%2F1615067946) | [androidJvm]
open fun [isImmersive](index.md#80260575%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isInMultiWindowMode](index.md#49252659%2FFunctions%2F1615067946) | [androidJvm]
open fun [isInMultiWindowMode](index.md#49252659%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isInPictureInPictureMode](index.md#-1297157635%2FFunctions%2F1615067946) | [androidJvm]
open fun [isInPictureInPictureMode](index.md#-1297157635%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isLaunchedFromBubble](index.md#386928344%2FFunctions%2F1615067946) | [androidJvm]
open fun [isLaunchedFromBubble](index.md#386928344%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isLocalVoiceInteractionSupported](index.md#-1903895843%2FFunctions%2F1615067946) | [androidJvm]
open fun [isLocalVoiceInteractionSupported](index.md#-1903895843%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [isRestricted](index.md#-1776278686%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isRestricted](index.md#-1776278686%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [isRestricted](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1776278686%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isRestricted](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1776278686%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isTaskRoot](index.md#2027112825%2FFunctions%2F1615067946) | [androidJvm]
open fun [isTaskRoot](index.md#2027112825%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [isUiContext](index.md#2131014658%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isUiContext](index.md#2131014658%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [isUiContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#2131014658%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isUiContext](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#2131014658%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isVoiceInteraction](index.md#-1356218592%2FFunctions%2F1615067946) | [androidJvm]
open fun [isVoiceInteraction](index.md#-1356218592%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isVoiceInteractionRoot](index.md#-1896831266%2FFunctions%2F1615067946) | [androidJvm]
open fun [isVoiceInteractionRoot](index.md#-1896831266%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [managedQuery](index.md#1633132857%2FFunctions%2F1615067946) | [androidJvm]
fun [~~managedQuery~~](index.md#1633132857%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p3: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>, p4: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Cursor](https://developer.android.com/reference/kotlin/android/database/Cursor.html) |
-| [moveDatabaseFrom](index.md#-1531556325%2FFunctions%2F1615067946) | [androidJvm]
open override fun [moveDatabaseFrom](index.md#-1531556325%2FFunctions%2F1615067946)(p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [moveSharedPreferencesFrom](index.md#-336755131%2FFunctions%2F1615067946) | [androidJvm]
open override fun [moveSharedPreferencesFrom](index.md#-336755131%2FFunctions%2F1615067946)(p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [moveDatabaseFrom](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1531556325%2FFunctions%2F1615067946) | [androidJvm]
open override fun [moveDatabaseFrom](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1531556325%2FFunctions%2F1615067946)(p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [moveSharedPreferencesFrom](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-336755131%2FFunctions%2F1615067946) | [androidJvm]
open override fun [moveSharedPreferencesFrom](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-336755131%2FFunctions%2F1615067946)(p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [moveTaskToBack](index.md#-1282212521%2FFunctions%2F1615067946) | [androidJvm]
open fun [moveTaskToBack](index.md#-1282212521%2FFunctions%2F1615067946)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [navigateUpTo](index.md#-1674464237%2FFunctions%2F1615067946) | [androidJvm]
open fun [navigateUpTo](index.md#-1674464237%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [navigateUpToFromChild](index.md#1538020645%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~navigateUpToFromChild~~](index.md#1538020645%2FFunctions%2F1615067946)(p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [obtainStyledAttributes](index.md#1790084466%2FFunctions%2F1615067946) | [androidJvm]
fun [obtainStyledAttributes](index.md#1790084466%2FFunctions%2F1615067946)(p0: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](index.md#-1642243463%2FFunctions%2F1615067946)(p0: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)?, p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](index.md#-1436889597%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](index.md#1344552345%2FFunctions%2F1615067946)(p0: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)?, p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html) |
+| [obtainStyledAttributes](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1790084466%2FFunctions%2F1615067946) | [androidJvm]
fun [obtainStyledAttributes](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1790084466%2FFunctions%2F1615067946)(p0: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1642243463%2FFunctions%2F1615067946)(p0: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)?, p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1436889597%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1344552345%2FFunctions%2F1615067946)(p0: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)?, p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html) |
| [onActionModeFinished](index.md#841259903%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onActionModeFinished](index.md#841259903%2FFunctions%2F1615067946)(p0: [ActionMode](https://developer.android.com/reference/kotlin/android/view/ActionMode.html)) |
| [onActionModeStarted](index.md#-312043496%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onActionModeStarted](index.md#-312043496%2FFunctions%2F1615067946)(p0: [ActionMode](https://developer.android.com/reference/kotlin/android/view/ActionMode.html)) |
| [onActivityReenter](index.md#799400472%2FFunctions%2F1615067946) | [androidJvm]
open fun [onActivityReenter](index.md#799400472%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)) |
@@ -273,13 +273,13 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [onWindowStartingActionMode](index.md#524415698%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onWindowStartingActionMode](index.md#524415698%2FFunctions%2F1615067946)(p0: [ActionMode.Callback](https://developer.android.com/reference/kotlin/android/view/ActionMode.Callback.html)): [ActionMode](https://developer.android.com/reference/kotlin/android/view/ActionMode.html)?
open override fun [onWindowStartingActionMode](index.md#541659979%2FFunctions%2F1615067946)(p0: [ActionMode.Callback](https://developer.android.com/reference/kotlin/android/view/ActionMode.Callback.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [ActionMode](https://developer.android.com/reference/kotlin/android/view/ActionMode.html)? |
| [onWindowStartingSupportActionMode](index.md#-1221758%2FFunctions%2F1615067946) | [androidJvm]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open override fun [onWindowStartingSupportActionMode](index.md#-1221758%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActionMode.Callback](https://developer.android.com/reference/kotlin/androidx/appcompat/view/ActionMode.Callback.html)): [ActionMode](https://developer.android.com/reference/kotlin/androidx/appcompat/view/ActionMode.html)? |
| [openContextMenu](index.md#-321075321%2FFunctions%2F1615067946) | [androidJvm]
open fun [openContextMenu](index.md#-321075321%2FFunctions%2F1615067946)(p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) |
-| [openFileInput](index.md#-436133483%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openFileInput](index.md#-436133483%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [FileInputStream](https://developer.android.com/reference/kotlin/java/io/FileInputStream.html) |
-| [openFileOutput](index.md#-1288028519%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openFileOutput](index.md#-1288028519%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [FileOutputStream](https://developer.android.com/reference/kotlin/java/io/FileOutputStream.html) |
+| [openFileInput](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-436133483%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openFileInput](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-436133483%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [FileInputStream](https://developer.android.com/reference/kotlin/java/io/FileInputStream.html) |
+| [openFileOutput](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1288028519%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openFileOutput](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1288028519%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [FileOutputStream](https://developer.android.com/reference/kotlin/java/io/FileOutputStream.html) |
| [openOptionsMenu](index.md#1724316293%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openOptionsMenu](index.md#1724316293%2FFunctions%2F1615067946)() |
-| [openOrCreateDatabase](index.md#-352848248%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openOrCreateDatabase](index.md#-352848248%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [SQLiteDatabase.CursorFactory](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.CursorFactory.html)): [SQLiteDatabase](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html)
open override fun [openOrCreateDatabase](index.md#1846808329%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [SQLiteDatabase.CursorFactory](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.CursorFactory.html), p3: [DatabaseErrorHandler](https://developer.android.com/reference/kotlin/android/database/DatabaseErrorHandler.html)?): [SQLiteDatabase](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html) |
+| [openOrCreateDatabase](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-352848248%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openOrCreateDatabase](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-352848248%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [SQLiteDatabase.CursorFactory](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.CursorFactory.html)): [SQLiteDatabase](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html)
open override fun [openOrCreateDatabase](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1846808329%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [SQLiteDatabase.CursorFactory](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.CursorFactory.html), p3: [DatabaseErrorHandler](https://developer.android.com/reference/kotlin/android/database/DatabaseErrorHandler.html)?): [SQLiteDatabase](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html) |
| [overridePendingTransition](index.md#-848669009%2FFunctions%2F1615067946) | [androidJvm]
open fun [overridePendingTransition](index.md#-848669009%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open fun [overridePendingTransition](index.md#-529493170%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
| [peekAvailableContext](index.md#151152734%2FFunctions%2F1615067946) | [androidJvm]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open override fun [peekAvailableContext](index.md#151152734%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)? |
-| [peekWallpaper](index.md#-1166010676%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~peekWallpaper~~](index.md#-1166010676%2FFunctions%2F1615067946)(): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html) |
+| [peekWallpaper](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1166010676%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~peekWallpaper~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1166010676%2FFunctions%2F1615067946)(): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html) |
| [postponeEnterTransition](index.md#1864516089%2FFunctions%2F1615067946) | [androidJvm]
open fun [postponeEnterTransition](index.md#1864516089%2FFunctions%2F1615067946)() |
| [putExtraData](index.md#665992618%2FFunctions%2F1615067946) | [androidJvm]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
open fun [~~putExtraData~~](index.md#665992618%2FFunctions%2F1615067946)(p0: [ComponentActivity.ExtraData](https://developer.android.com/reference/kotlin/androidx/core/app/ComponentActivity.ExtraData.html)) |
| [recreate](index.md#-2032215845%2FFunctions%2F1615067946) | [androidJvm]
open fun [recreate](index.md#-2032215845%2FFunctions%2F1615067946)() |
@@ -287,7 +287,7 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [registerComponentCallbacks](index.md#-2039313903%2FFunctions%2F1615067946) | [androidJvm]
open override fun [registerComponentCallbacks](index.md#-2039313903%2FFunctions%2F1615067946)(p0: [ComponentCallbacks](https://developer.android.com/reference/kotlin/android/content/ComponentCallbacks.html)) |
| [registerForActivityResult](index.md#754690300%2FFunctions%2F1615067946) | [androidJvm]
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun <[I](index.md#754690300%2FFunctions%2F1615067946) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html), [O](index.md#754690300%2FFunctions%2F1615067946) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [registerForActivityResult](index.md#754690300%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActivityResultContract](https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract.html)<[I](index.md#754690300%2FFunctions%2F1615067946), [O](index.md#754690300%2FFunctions%2F1615067946)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [ActivityResultCallback](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultCallback.html)<[O](index.md#754690300%2FFunctions%2F1615067946)>): [ActivityResultLauncher](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultLauncher.html)<[I](index.md#754690300%2FFunctions%2F1615067946)>
@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)
override fun <[I](index.md#772146783%2FFunctions%2F1615067946) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html), [O](index.md#772146783%2FFunctions%2F1615067946) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [registerForActivityResult](index.md#772146783%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActivityResultContract](https://developer.android.com/reference/kotlin/androidx/activity/result/contract/ActivityResultContract.html)<[I](index.md#772146783%2FFunctions%2F1615067946), [O](index.md#772146783%2FFunctions%2F1615067946)>, @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p1: [ActivityResultRegistry](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultRegistry.html), @[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p2: [ActivityResultCallback](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultCallback.html)<[O](index.md#772146783%2FFunctions%2F1615067946)>): [ActivityResultLauncher](https://developer.android.com/reference/kotlin/androidx/activity/result/ActivityResultLauncher.html)<[I](index.md#772146783%2FFunctions%2F1615067946)> |
| [registerForContextMenu](index.md#2070422321%2FFunctions%2F1615067946) | [androidJvm]
open fun [registerForContextMenu](index.md#2070422321%2FFunctions%2F1615067946)(p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) |
-| [registerReceiver](index.md#369060837%2FFunctions%2F1615067946) | [androidJvm]
open override fun [registerReceiver](index.md#369060837%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](index.md#180699224%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](index.md#1896280668%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](index.md#-444475007%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)? |
+| [registerReceiver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#369060837%2FFunctions%2F1615067946) | [androidJvm]
open override fun [registerReceiver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#369060837%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#180699224%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1896280668%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-444475007%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)? |
| [releaseInstance](index.md#1568969140%2FFunctions%2F1615067946) | [androidJvm]
open fun [releaseInstance](index.md#1568969140%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [removeDialog](index.md#1722688284%2FFunctions%2F1615067946) | [androidJvm]
fun [~~removeDialog~~](index.md#1722688284%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
| [removeMenuProvider](index.md#-1544602520%2FFunctions%2F1615067946) | [androidJvm]
open override fun [removeMenuProvider](index.md#-1544602520%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [MenuProvider](https://developer.android.com/reference/kotlin/androidx/core/view/MenuProvider.html)) |
@@ -297,8 +297,8 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [removeOnNewIntentListener](index.md#-1845614934%2FFunctions%2F1615067946) | [androidJvm]
override fun [removeOnNewIntentListener](index.md#-1845614934%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Consumer](https://developer.android.com/reference/kotlin/androidx/core/util/Consumer.html)<[Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)>) |
| [removeOnPictureInPictureModeChangedListener](index.md#902597185%2FFunctions%2F1615067946) | [androidJvm]
override fun [removeOnPictureInPictureModeChangedListener](index.md#902597185%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Consumer](https://developer.android.com/reference/kotlin/androidx/core/util/Consumer.html)<[PictureInPictureModeChangedInfo](https://developer.android.com/reference/kotlin/androidx/core/app/PictureInPictureModeChangedInfo.html)>) |
| [removeOnTrimMemoryListener](index.md#1640414565%2FFunctions%2F1615067946) | [androidJvm]
override fun [removeOnTrimMemoryListener](index.md#1640414565%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Consumer](https://developer.android.com/reference/kotlin/androidx/core/util/Consumer.html)<[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)>) |
-| [removeStickyBroadcast](index.md#-1734837009%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~removeStickyBroadcast~~](index.md#-1734837009%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)) |
-| [removeStickyBroadcastAsUser](index.md#588277431%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~removeStickyBroadcastAsUser~~](index.md#588277431%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)) |
+| [removeStickyBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1734837009%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~removeStickyBroadcast~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1734837009%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)) |
+| [removeStickyBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#588277431%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~removeStickyBroadcastAsUser~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#588277431%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)) |
| [reportFullyDrawn](index.md#1513000075%2FFunctions%2F1615067946) | [androidJvm]
open override fun [reportFullyDrawn](index.md#1513000075%2FFunctions%2F1615067946)() |
| [requestDragAndDropPermissions](index.md#1897880531%2FFunctions%2F1615067946) | [androidJvm]
open fun [requestDragAndDropPermissions](index.md#1897880531%2FFunctions%2F1615067946)(p0: [DragEvent](https://developer.android.com/reference/kotlin/android/view/DragEvent.html)): [DragAndDropPermissions](https://developer.android.com/reference/kotlin/android/view/DragAndDropPermissions.html) |
| [requestPermissions](index.md#-118591778%2FFunctions%2F1615067946) | [androidJvm]
fun [requestPermissions](index.md#-118591778%2FFunctions%2F1615067946)(p0: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
@@ -306,19 +306,19 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [requestVisibleBehind](index.md#-240253806%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~requestVisibleBehind~~](index.md#-240253806%2FFunctions%2F1615067946)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [requestWindowFeature](index.md#1008014993%2FFunctions%2F1615067946) | [androidJvm]
fun [requestWindowFeature](index.md#1008014993%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [requireViewById](index.md#595482482%2FFunctions%2F1615067946) | [androidJvm]
fun <[T](index.md#595482482%2FFunctions%2F1615067946) : [View](https://developer.android.com/reference/kotlin/android/view/View.html)> [requireViewById](index.md#595482482%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [T](index.md#595482482%2FFunctions%2F1615067946) |
-| [revokeSelfPermissionOnKill](index.md#71314554%2FFunctions%2F1615067946) | [androidJvm]
open fun [revokeSelfPermissionOnKill](index.md#71314554%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
-| [revokeSelfPermissionsOnKill](index.md#-1222544766%2FFunctions%2F1615067946) | [androidJvm]
open override fun [revokeSelfPermissionsOnKill](index.md#-1222544766%2FFunctions%2F1615067946)(p0: [MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>) |
-| [revokeUriPermission](index.md#-1459364395%2FFunctions%2F1615067946) | [androidJvm]
open override fun [revokeUriPermission](index.md#-1459364395%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open override fun [revokeUriPermission](index.md#-401097840%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [revokeSelfPermissionOnKill](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#71314554%2FFunctions%2F1615067946) | [androidJvm]
open fun [revokeSelfPermissionOnKill](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#71314554%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
+| [revokeSelfPermissionsOnKill](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1222544766%2FFunctions%2F1615067946) | [androidJvm]
open override fun [revokeSelfPermissionsOnKill](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1222544766%2FFunctions%2F1615067946)(p0: [MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>) |
+| [revokeUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1459364395%2FFunctions%2F1615067946) | [androidJvm]
open override fun [revokeUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1459364395%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open override fun [revokeUriPermission](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-401097840%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
| [runOnUiThread](index.md#1975015607%2FFunctions%2F1615067946) | [androidJvm]
fun [runOnUiThread](index.md#1975015607%2FFunctions%2F1615067946)(p0: [Runnable](https://developer.android.com/reference/kotlin/java/lang/Runnable.html)) |
-| [sendBroadcast](index.md#689861098%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendBroadcast](index.md#689861098%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open override fun [sendBroadcast](index.md#281415540%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
-| [sendBroadcastAsUser](index.md#288711986%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendBroadcastAsUser](index.md#288711986%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html))
open override fun [sendBroadcastAsUser](index.md#546382636%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
-| [sendBroadcastWithMultiplePermissions](index.md#298882104%2FFunctions%2F1615067946) | [androidJvm]
open fun [sendBroadcastWithMultiplePermissions](index.md#298882104%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>) |
-| [sendOrderedBroadcast](index.md#-2119529981%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendOrderedBroadcast](index.md#-2119529981%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?)
open override fun [sendOrderedBroadcast](index.md#2070291024%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
open override fun [sendOrderedBroadcast](index.md#-1131561336%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p4: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
open fun [sendOrderedBroadcast](index.md#1922483713%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p4: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p5: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?, p8: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
-| [sendOrderedBroadcastAsUser](index.md#1495784840%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendOrderedBroadcastAsUser](index.md#1495784840%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p4: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
-| [sendStickyBroadcast](index.md#112235123%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyBroadcast~~](index.md#112235123%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open override fun [~~sendStickyBroadcast~~](index.md#-118572358%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
-| [sendStickyBroadcastAsUser](index.md#-669462981%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyBroadcastAsUser~~](index.md#-669462981%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)) |
-| [sendStickyOrderedBroadcast](index.md#758100831%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyOrderedBroadcast~~](index.md#758100831%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p2: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p5: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
-| [sendStickyOrderedBroadcastAsUser](index.md#1135629991%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyOrderedBroadcastAsUser~~](index.md#1135629991%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#689861098%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#689861098%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open override fun [sendBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#281415540%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [sendBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#288711986%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#288711986%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html))
open override fun [sendBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#546382636%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [sendBroadcastWithMultiplePermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#298882104%2FFunctions%2F1615067946) | [androidJvm]
open fun [sendBroadcastWithMultiplePermissions](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#298882104%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>) |
+| [sendOrderedBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2119529981%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendOrderedBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2119529981%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?)
open override fun [sendOrderedBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#2070291024%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
open override fun [sendOrderedBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1131561336%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p4: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
open fun [sendOrderedBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1922483713%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p4: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p5: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?, p8: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendOrderedBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1495784840%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendOrderedBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1495784840%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p4: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendStickyBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#112235123%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyBroadcast~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#112235123%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open override fun [~~sendStickyBroadcast~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-118572358%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendStickyBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-669462981%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyBroadcastAsUser~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-669462981%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)) |
+| [sendStickyOrderedBroadcast](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#758100831%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyOrderedBroadcast~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#758100831%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p2: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p5: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendStickyOrderedBroadcastAsUser](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1135629991%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyOrderedBroadcastAsUser~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1135629991%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
| [setActionBar](index.md#-1108993724%2FFunctions%2F1615067946) | [androidJvm]
open fun [setActionBar](index.md#-1108993724%2FFunctions%2F1615067946)(p0: [Toolbar](https://developer.android.com/reference/kotlin/android/widget/Toolbar.html)?) |
| [setContentTransitionManager](index.md#376493809%2FFunctions%2F1615067946) | [androidJvm]
open fun [setContentTransitionManager](index.md#376493809%2FFunctions%2F1615067946)(p0: [TransitionManager](https://developer.android.com/reference/kotlin/android/transition/TransitionManager.html)) |
| [setContentView](index.md#-1721756371%2FFunctions%2F1615067946) | [androidJvm]
open override fun [setContentView](index.md#-1721756371%2FFunctions%2F1615067946)(p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html))
open override fun [setContentView](index.md#-1986977500%2FFunctions%2F1615067946)(@[LayoutRes](https://developer.android.com/reference/kotlin/androidx/annotation/LayoutRes.html)p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open override fun [setContentView](index.md#252290882%2FFunctions%2F1615067946)(p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html), p1: [ViewGroup.LayoutParams](https://developer.android.com/reference/kotlin/android/view/ViewGroup.LayoutParams.html)) |
@@ -360,7 +360,7 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [setVisible](index.md#-937109057%2FFunctions%2F1615067946) | [androidJvm]
open fun [setVisible](index.md#-937109057%2FFunctions%2F1615067946)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) |
| [setVolumeControlStream](index.md#-2130446553%2FFunctions%2F1615067946) | [androidJvm]
fun [setVolumeControlStream](index.md#-2130446553%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
| [setVrModeEnabled](index.md#-1342078786%2FFunctions%2F1615067946) | [androidJvm]
open fun [setVrModeEnabled](index.md#-1342078786%2FFunctions%2F1615067946)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), p1: [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)) |
-| [setWallpaper](index.md#-2108598200%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~setWallpaper~~](index.md#-2108598200%2FFunctions%2F1615067946)(p0: [Bitmap](https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html))
open override fun [~~setWallpaper~~](index.md#-659870931%2FFunctions%2F1615067946)(p0: [InputStream](https://developer.android.com/reference/kotlin/java/io/InputStream.html)) |
+| [setWallpaper](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2108598200%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~setWallpaper~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-2108598200%2FFunctions%2F1615067946)(p0: [Bitmap](https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html))
open override fun [~~setWallpaper~~](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-659870931%2FFunctions%2F1615067946)(p0: [InputStream](https://developer.android.com/reference/kotlin/java/io/InputStream.html)) |
| [shouldDockBigOverlays](index.md#1470700403%2FFunctions%2F1615067946) | [androidJvm]
open fun [shouldDockBigOverlays](index.md#1470700403%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [shouldShowRequestPermissionRationale](index.md#979814755%2FFunctions%2F1615067946) | [androidJvm]
open fun [shouldShowRequestPermissionRationale](index.md#979814755%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [shouldUpRecreateTask](index.md#1897505624%2FFunctions%2F1615067946) | [androidJvm]
open fun [shouldUpRecreateTask](index.md#1897505624%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
@@ -374,8 +374,8 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [startActivityFromChild](index.md#-905015780%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~startActivityFromChild~~](index.md#-905015780%2FFunctions%2F1615067946)(p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open fun [~~startActivityFromChild~~](index.md#-847813519%2FFunctions%2F1615067946)(p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
| [startActivityFromFragment](index.md#1518249207%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~startActivityFromFragment~~](index.md#1518249207%2FFunctions%2F1615067946)(p0: [Fragment](https://developer.android.com/reference/kotlin/android/app/Fragment.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open fun [~~startActivityFromFragment~~](index.md#384168374%2FFunctions%2F1615067946)(p0: [Fragment](https://developer.android.com/reference/kotlin/android/app/Fragment.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
open fun [startActivityFromFragment](index.md#-1777591661%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open fun [startActivityFromFragment](index.md#735116954%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [Fragment](https://developer.android.com/reference/kotlin/androidx/fragment/app/Fragment.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p3: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
| [startActivityIfNeeded](index.md#-459743168%2FFunctions%2F1615067946) | [androidJvm]
open fun [startActivityIfNeeded](index.md#-459743168%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
open fun [startActivityIfNeeded](index.md#1813641165%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [startForegroundService](index.md#-291854073%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startForegroundService](index.md#-291854073%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)? |
-| [startInstrumentation](index.md#-1028122110%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startInstrumentation](index.md#-1028122110%2FFunctions%2F1615067946)(p0: [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [startForegroundService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-291854073%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startForegroundService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-291854073%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)? |
+| [startInstrumentation](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1028122110%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startInstrumentation](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#-1028122110%2FFunctions%2F1615067946)(p0: [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [startIntentSender](index.md#-1364634351%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startIntentSender](index.md#-1364634351%2FFunctions%2F1615067946)(p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open override fun [startIntentSender](index.md#944572252%2FFunctions%2F1615067946)(p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
| [startIntentSenderForResult](index.md#858983763%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~startIntentSenderForResult~~](index.md#858983763%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open override fun [~~startIntentSenderForResult~~](index.md#-151940134%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p2: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), @[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
| [startIntentSenderFromChild](index.md#2072239265%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~startIntentSenderFromChild~~](index.md#2072239265%2FFunctions%2F1615067946)(p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html), p1: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open fun [~~startIntentSenderFromChild~~](index.md#474461644%2FFunctions%2F1615067946)(p0: [Activity](https://developer.android.com/reference/kotlin/android/app/Activity.html), p1: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
@@ -386,12 +386,12 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [startNextMatchingActivity](index.md#-1814455073%2FFunctions%2F1615067946) | [androidJvm]
open fun [startNextMatchingActivity](index.md#-1814455073%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
open fun [startNextMatchingActivity](index.md#-1412702002%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [startPostponedEnterTransition](index.md#1851940207%2FFunctions%2F1615067946) | [androidJvm]
open fun [startPostponedEnterTransition](index.md#1851940207%2FFunctions%2F1615067946)() |
| [startSearch](index.md#-478932714%2FFunctions%2F1615067946) | [androidJvm]
open fun [startSearch](index.md#-478932714%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p1: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?, p3: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) |
-| [startService](index.md#1648257764%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startService](index.md#1648257764%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)? |
+| [startService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1648257764%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1648257764%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)? |
| [startSupportActionMode](index.md#1150656037%2FFunctions%2F1615067946) | [androidJvm]
@[Nullable](https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html)
open fun [startSupportActionMode](index.md#1150656037%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [ActionMode.Callback](https://developer.android.com/reference/kotlin/androidx/appcompat/view/ActionMode.Callback.html)): [ActionMode](https://developer.android.com/reference/kotlin/androidx/appcompat/view/ActionMode.html)? |
| [stopLocalVoiceInteraction](index.md#1860702247%2FFunctions%2F1615067946) | [androidJvm]
open fun [stopLocalVoiceInteraction](index.md#1860702247%2FFunctions%2F1615067946)() |
| [stopLockTask](index.md#-285436616%2FFunctions%2F1615067946) | [androidJvm]
open fun [stopLockTask](index.md#-285436616%2FFunctions%2F1615067946)() |
| [stopManagingCursor](index.md#289652680%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~stopManagingCursor~~](index.md#289652680%2FFunctions%2F1615067946)(p0: [Cursor](https://developer.android.com/reference/kotlin/android/database/Cursor.html)) |
-| [stopService](index.md#784453104%2FFunctions%2F1615067946) | [androidJvm]
open override fun [stopService](index.md#784453104%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [stopService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#784453104%2FFunctions%2F1615067946) | [androidJvm]
open override fun [stopService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#784453104%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [superDispatchKeyEvent](index.md#-691651435%2FFunctions%2F1615067946) | [androidJvm]
@[RestrictTo](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.html)(value = [[RestrictTo.Scope.LIBRARY_GROUP_PREFIX](https://developer.android.com/reference/kotlin/androidx/annotation/RestrictTo.Scope.LIBRARY_GROUP_PREFIX.html)])
open override fun [superDispatchKeyEvent](index.md#-691651435%2FFunctions%2F1615067946)(@[NonNull](https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html)p0: [KeyEvent](https://developer.android.com/reference/kotlin/android/view/KeyEvent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [supportFinishAfterTransition](index.md#-875696123%2FFunctions%2F1615067946) | [androidJvm]
open fun [supportFinishAfterTransition](index.md#-875696123%2FFunctions%2F1615067946)() |
| [supportInvalidateOptionsMenu](index.md#-850970929%2FFunctions%2F1615067946) | [androidJvm]
open override fun [supportInvalidateOptionsMenu](index.md#-850970929%2FFunctions%2F1615067946)() |
@@ -402,12 +402,12 @@ class [OpenId4VciAuthorizeActivity](index.md) : [AppCompatActivity](https://deve
| [supportStartPostponedEnterTransition](index.md#-2033309118%2FFunctions%2F1615067946) | [androidJvm]
open fun [supportStartPostponedEnterTransition](index.md#-2033309118%2FFunctions%2F1615067946)() |
| [takeKeyEvents](index.md#1120732996%2FFunctions%2F1615067946) | [androidJvm]
open fun [takeKeyEvents](index.md#1120732996%2FFunctions%2F1615067946)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) |
| [triggerSearch](index.md#-1891181639%2FFunctions%2F1615067946) | [androidJvm]
open fun [triggerSearch](index.md#-1891181639%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
-| [unbindService](index.md#391044623%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unbindService](index.md#391044623%2FFunctions%2F1615067946)(p0: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)) |
+| [unbindService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#391044623%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unbindService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#391044623%2FFunctions%2F1615067946)(p0: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)) |
| [unregisterActivityLifecycleCallbacks](index.md#-1246757122%2FFunctions%2F1615067946) | [androidJvm]
open fun [unregisterActivityLifecycleCallbacks](index.md#-1246757122%2FFunctions%2F1615067946)(p0: [Application.ActivityLifecycleCallbacks](https://developer.android.com/reference/kotlin/android/app/Application.ActivityLifecycleCallbacks.html)) |
| [unregisterComponentCallbacks](index.md#2142246360%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unregisterComponentCallbacks](index.md#2142246360%2FFunctions%2F1615067946)(p0: [ComponentCallbacks](https://developer.android.com/reference/kotlin/android/content/ComponentCallbacks.html)) |
| [unregisterForContextMenu](index.md#1919084810%2FFunctions%2F1615067946) | [androidJvm]
open fun [unregisterForContextMenu](index.md#1919084810%2FFunctions%2F1615067946)(p0: [View](https://developer.android.com/reference/kotlin/android/view/View.html)) |
-| [unregisterReceiver](index.md#1949248458%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unregisterReceiver](index.md#1949248458%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)) |
-| [updateServiceGroup](index.md#178246991%2FFunctions%2F1615067946) | [androidJvm]
open override fun [updateServiceGroup](index.md#178246991%2FFunctions%2F1615067946)(p0: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [unregisterReceiver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1949248458%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unregisterReceiver](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#1949248458%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)) |
+| [updateServiceGroup](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#178246991%2FFunctions%2F1615067946) | [androidJvm]
open override fun [updateServiceGroup](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md#178246991%2FFunctions%2F1615067946)(p0: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
| [validateRequestPermissionsRequestCode](index.md#296508435%2FFunctions%2F1615067946) | [androidJvm]
override fun [~~validateRequestPermissionsRequestCode~~](index.md#296508435%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
## Properties
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/-builder.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/-builder.md
new file mode 100644
index 00000000..515acfc4
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/-builder.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../../index.md)/[OpenId4VpCBORResponseGeneratorImpl](../index.md)/[Builder](index.md)/[Builder](-builder.md)
+
+# Builder
+
+[androidJvm]\
+constructor(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html))
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/build.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/build.md
new file mode 100644
index 00000000..efb13f06
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/build.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../../index.md)/[OpenId4VpCBORResponseGeneratorImpl](../index.md)/[Builder](index.md)/[build](build.md)
+
+# build
+
+[androidJvm]\
+fun [build](build.md)(): [OpenId4VpCBORResponseGeneratorImpl](../index.md)
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/documents-resolver.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/documents-resolver.md
new file mode 100644
index 00000000..ccde6ac7
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/documents-resolver.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../../index.md)/[OpenId4VpCBORResponseGeneratorImpl](../index.md)/[Builder](index.md)/[documentsResolver](documents-resolver.md)
+
+# documentsResolver
+
+[androidJvm]\
+var [documentsResolver](documents-resolver.md): DocumentsResolver?
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/index.md
new file mode 100644
index 00000000..817eba74
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/index.md
@@ -0,0 +1,26 @@
+//[wallet-core](../../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../../index.md)/[OpenId4VpCBORResponseGeneratorImpl](../index.md)/[Builder](index.md)
+
+# Builder
+
+[androidJvm]\
+class [Builder](index.md)(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html))
+
+## Constructors
+
+| | |
+|---|---|
+| [Builder](-builder.md) | [androidJvm]
constructor(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)) |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [build](build.md) | [androidJvm]
fun [build](build.md)(): [OpenId4VpCBORResponseGeneratorImpl](../index.md) |
+| [readerTrustStore](reader-trust-store.md) | [androidJvm]
fun [readerTrustStore](reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4VpCBORResponseGeneratorImpl.Builder](index.md)
Reader trust store that will be used to validate the certificate chain of the mdoc verifier |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [documentsResolver](documents-resolver.md) | [androidJvm]
var [documentsResolver](documents-resolver.md): DocumentsResolver? |
+| [readerTrustStore](reader-trust-store.md) | [androidJvm]
var [readerTrustStore](reader-trust-store.md): ReaderTrustStore? |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/reader-trust-store.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/reader-trust-store.md
new file mode 100644
index 00000000..c893b291
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/reader-trust-store.md
@@ -0,0 +1,19 @@
+//[wallet-core](../../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../../index.md)/[OpenId4VpCBORResponseGeneratorImpl](../index.md)/[Builder](index.md)/[readerTrustStore](reader-trust-store.md)
+
+# readerTrustStore
+
+[androidJvm]\
+fun [readerTrustStore](reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4VpCBORResponseGeneratorImpl.Builder](index.md)
+
+Reader trust store that will be used to validate the certificate chain of the mdoc verifier
+
+#### Parameters
+
+androidJvm
+
+| |
+|---|
+| readerTrustStore |
+
+[androidJvm]\
+var [readerTrustStore](reader-trust-store.md): ReaderTrustStore?
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-open-id4-vp-c-b-o-r-response-generator-impl.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-open-id4-vp-c-b-o-r-response-generator-impl.md
new file mode 100644
index 00000000..53052b7f
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-open-id4-vp-c-b-o-r-response-generator-impl.md
@@ -0,0 +1,16 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponseGeneratorImpl](index.md)/[OpenId4VpCBORResponseGeneratorImpl](-open-id4-vp-c-b-o-r-response-generator-impl.md)
+
+# OpenId4VpCBORResponseGeneratorImpl
+
+[androidJvm]\
+constructor(documentsResolver: DocumentsResolver, storageEngine: StorageEngine, secureArea: AndroidKeystoreSecureArea)
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| documentsResolver | document manager instance |
+| storageEngine | storage engine used to store documents |
+| secureArea | secure area used to store documents' keys |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/create-response.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/create-response.md
new file mode 100644
index 00000000..9e5529ab
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/create-response.md
@@ -0,0 +1,20 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponseGeneratorImpl](index.md)/[createResponse](create-response.md)
+
+# createResponse
+
+[androidJvm]\
+open override fun [createResponse](create-response.md)(disclosedDocuments: DisclosedDocuments): ResponseResult
+
+Creates a response and returns a ResponseResult
+
+#### Return
+
+a ResponseResult
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| disclosedDocuments | a [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html) of DisclosedDocument |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/index.md
new file mode 100644
index 00000000..294b58de
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/index.md
@@ -0,0 +1,38 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponseGeneratorImpl](index.md)
+
+# OpenId4VpCBORResponseGeneratorImpl
+
+class [OpenId4VpCBORResponseGeneratorImpl](index.md)(documentsResolver: DocumentsResolver, storageEngine: StorageEngine, secureArea: AndroidKeystoreSecureArea) : ResponseGenerator<[OpenId4VpRequest](../-open-id4-vp-request/index.md)>
+
+OpenId4VpCBORResponseGeneratorImpl class is used for parsing a request (Presentation Definition) and generating the DeviceResponse
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| documentsResolver | document manager instance |
+| storageEngine | storage engine used to store documents |
+| secureArea | secure area used to store documents' keys |
+
+## Constructors
+
+| | |
+|---|---|
+| [OpenId4VpCBORResponseGeneratorImpl](-open-id4-vp-c-b-o-r-response-generator-impl.md) | [androidJvm]
constructor(documentsResolver: DocumentsResolver, storageEngine: StorageEngine, secureArea: AndroidKeystoreSecureArea) |
+
+## Types
+
+| Name | Summary |
+|---|---|
+| [Builder](-builder/index.md) | [androidJvm]
class [Builder](-builder/index.md)(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)) |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [createResponse](create-response.md) | [androidJvm]
open override fun [createResponse](create-response.md)(disclosedDocuments: DisclosedDocuments): ResponseResult
Creates a response and returns a ResponseResult |
+| [parseRequest](parse-request.md) | [androidJvm]
open override fun [parseRequest](parse-request.md)(request: [OpenId4VpRequest](../-open-id4-vp-request/index.md)): RequestedDocumentData
Parses a request and returns the requested document data |
+| [readerTrustStore](reader-trust-store.md) | [androidJvm]
fun [readerTrustStore](reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4VpCBORResponseGeneratorImpl](index.md)
Set a trust store so that reader authentication can be performed. |
+| [setReaderTrustStore](set-reader-trust-store.md) | [androidJvm]
open override fun [setReaderTrustStore](set-reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4VpCBORResponseGeneratorImpl](index.md)
Set a trust store so that reader authentication can be performed. |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/parse-request.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/parse-request.md
new file mode 100644
index 00000000..c7b6a498
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/parse-request.md
@@ -0,0 +1,20 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponseGeneratorImpl](index.md)/[parseRequest](parse-request.md)
+
+# parseRequest
+
+[androidJvm]\
+open override fun [parseRequest](parse-request.md)(request: [OpenId4VpRequest](../-open-id4-vp-request/index.md)): RequestedDocumentData
+
+Parses a request and returns the requested document data
+
+#### Return
+
+RequestedDocumentData
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| request | the received request |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/reader-trust-store.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/reader-trust-store.md
new file mode 100644
index 00000000..dc619c24
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/reader-trust-store.md
@@ -0,0 +1,18 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponseGeneratorImpl](index.md)/[readerTrustStore](reader-trust-store.md)
+
+# readerTrustStore
+
+[androidJvm]\
+fun [readerTrustStore](reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4VpCBORResponseGeneratorImpl](index.md)
+
+Set a trust store so that reader authentication can be performed.
+
+If it is not provided, reader authentication will not be performed.
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| readerTrustStore | a trust store for reader authentication, e.g. DefaultReaderTrustStore |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/set-reader-trust-store.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/set-reader-trust-store.md
new file mode 100644
index 00000000..76672400
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/set-reader-trust-store.md
@@ -0,0 +1,18 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponseGeneratorImpl](index.md)/[setReaderTrustStore](set-reader-trust-store.md)
+
+# setReaderTrustStore
+
+[androidJvm]\
+open override fun [setReaderTrustStore](set-reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4VpCBORResponseGeneratorImpl](index.md)
+
+Set a trust store so that reader authentication can be performed.
+
+If it is not provided, reader authentication will not be performed.
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| readerTrustStore | a trust store for reader authentication, e.g. DefaultReaderTrustStore |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/-open-id4-vp-c-b-o-r-response.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/-open-id4-vp-c-b-o-r-response.md
new file mode 100644
index 00000000..671e9883
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/-open-id4-vp-c-b-o-r-response.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponse](index.md)/[OpenId4VpCBORResponse](-open-id4-vp-c-b-o-r-response.md)
+
+# OpenId4VpCBORResponse
+
+[androidJvm]\
+constructor(deviceResponseBytes: [DeviceResponseBytes](../index.md#943895756%2FClasslikes%2F1615067946))
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/device-response-bytes.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/device-response-bytes.md
new file mode 100644
index 00000000..d91ede74
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/device-response-bytes.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponse](index.md)/[deviceResponseBytes](device-response-bytes.md)
+
+# deviceResponseBytes
+
+[androidJvm]\
+val [deviceResponseBytes](device-response-bytes.md): [DeviceResponseBytes](../index.md#943895756%2FClasslikes%2F1615067946)
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/index.md
new file mode 100644
index 00000000..6df8af00
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/index.md
@@ -0,0 +1,18 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpCBORResponse](index.md)
+
+# OpenId4VpCBORResponse
+
+[androidJvm]\
+class [OpenId4VpCBORResponse](index.md)(val deviceResponseBytes: [DeviceResponseBytes](../index.md#943895756%2FClasslikes%2F1615067946)) : Response
+
+## Constructors
+
+| | |
+|---|---|
+| [OpenId4VpCBORResponse](-open-id4-vp-c-b-o-r-response.md) | [androidJvm]
constructor(deviceResponseBytes: [DeviceResponseBytes](../index.md#943895756%2FClasslikes%2F1615067946)) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [deviceResponseBytes](device-response-bytes.md) | [androidJvm]
val [deviceResponseBytes](device-response-bytes.md): [DeviceResponseBytes](../index.md#943895756%2FClasslikes%2F1615067946) |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/index.md
index 5b368925..cfcb350b 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/index.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/index.md
@@ -21,6 +21,7 @@ Builder for [OpenId4VciConfig](../../../eu.europa.ec.eudi.wallet.document.issue.
| [withClientIdSchemes](with-client-id-schemes.md) | [androidJvm]
fun [withClientIdSchemes](with-client-id-schemes.md)(clientIdSchemes: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[ClientIdScheme](../../-client-id-scheme/index.md)>): [OpenId4VpConfig.Builder](index.md)
Sets the issuer url. |
| [withEncryptionAlgorithms](with-encryption-algorithms.md) | [androidJvm]
fun [withEncryptionAlgorithms](with-encryption-algorithms.md)(encryptionAlgorithms: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[EncryptionAlgorithm](../../-encryption-algorithm/index.md)>): [OpenId4VpConfig.Builder](index.md)
Sets the issuer url. |
| [withEncryptionMethods](with-encryption-methods.md) | [androidJvm]
fun [withEncryptionMethods](with-encryption-methods.md)(encryptionMethods: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[EncryptionMethod](../../-encryption-method/index.md)>): [OpenId4VpConfig.Builder](index.md)
Sets the issuer url. |
+| [withScheme](with-scheme.md) | [androidJvm]
fun [withScheme](with-scheme.md)(scheme: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [OpenId4VpConfig.Builder](index.md)
Sets the scheme for openId4Vp. By default, the scheme "mdoc-openid4vp" is supported |
## Properties
@@ -29,3 +30,4 @@ Builder for [OpenId4VciConfig](../../../eu.europa.ec.eudi.wallet.document.issue.
| [clientIdSchemes](client-id-schemes.md) | [androidJvm]
lateinit var [clientIdSchemes](client-id-schemes.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[ClientIdScheme](../../-client-id-scheme/index.md)>
list of [ClientIdScheme](../../-client-id-scheme/index.md) that defines the supported Client Identifier schemes |
| [encryptionAlgorithms](encryption-algorithms.md) | [androidJvm]
lateinit var [encryptionAlgorithms](encryption-algorithms.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[EncryptionAlgorithm](../../-encryption-algorithm/index.md)>
list of [EncryptionAlgorithm](../../-encryption-algorithm/index.md) that defines the supported encryption algorithms |
| [encryptionMethods](encryption-methods.md) | [androidJvm]
lateinit var [encryptionMethods](encryption-methods.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[EncryptionMethod](../../-encryption-method/index.md)>
list of [EncryptionMethod](../../-encryption-method/index.md) that defines the supported encryption methods |
+| [scheme](scheme.md) | [androidJvm]
var [scheme](scheme.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
for OpenId4Vp. Optionally, you can change the scheme. By default, "mdoc-openid4vp" is used. |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/scheme.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/scheme.md
new file mode 100644
index 00000000..b4b562d6
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/scheme.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../../index.md)/[OpenId4VpConfig](../index.md)/[Builder](index.md)/[scheme](scheme.md)
+
+# scheme
+
+[androidJvm]\
+var [scheme](scheme.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/with-scheme.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/with-scheme.md
new file mode 100644
index 00000000..42a03220
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/with-scheme.md
@@ -0,0 +1,16 @@
+//[wallet-core](../../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../../index.md)/[OpenId4VpConfig](../index.md)/[Builder](index.md)/[withScheme](with-scheme.md)
+
+# withScheme
+
+[androidJvm]\
+fun [withScheme](with-scheme.md)(scheme: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [OpenId4VpConfig.Builder](index.md)
+
+Sets the scheme for openId4Vp. By default, the scheme "mdoc-openid4vp" is supported
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| scheme | the scheme |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/index.md
index 7bc3d91b..7df508bb 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/index.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/index.md
@@ -40,3 +40,4 @@ val config = OpenId4VpConfig.Builder()
| [clientIdSchemes](client-id-schemes.md) | [androidJvm]
val [clientIdSchemes](client-id-schemes.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[ClientIdScheme](../-client-id-scheme/index.md)>
list of [ClientIdScheme](../-client-id-scheme/index.md) that defines the supported Client Identifier schemes |
| [encryptionAlgorithms](encryption-algorithms.md) | [androidJvm]
val [encryptionAlgorithms](encryption-algorithms.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[EncryptionAlgorithm](../-encryption-algorithm/index.md)>
list of [EncryptionAlgorithm](../-encryption-algorithm/index.md) that defines the supported encryption algorithms |
| [encryptionMethods](encryption-methods.md) | [androidJvm]
val [encryptionMethods](encryption-methods.md): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[EncryptionMethod](../-encryption-method/index.md)>
list of [EncryptionMethod](../-encryption-method/index.md) that defines the supported encryption methods |
+| [scheme](scheme.md) | [androidJvm]
val [scheme](scheme.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
optionally you can change the scheme. By default, the scheme "mdoc-openid4vp" is used |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/scheme.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/scheme.md
new file mode 100644
index 00000000..0a8fe855
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/scheme.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpConfig](index.md)/[scheme](scheme.md)
+
+# scheme
+
+[androidJvm]\
+val [scheme](scheme.md): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/-open-id4-vp-request.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/-open-id4-vp-request.md
new file mode 100644
index 00000000..7ec1f150
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/-open-id4-vp-request.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpRequest](index.md)/[OpenId4VpRequest](-open-id4-vp-request.md)
+
+# OpenId4VpRequest
+
+[androidJvm]\
+constructor(presentationDefinition: PresentationDefinition)
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/index.md
new file mode 100644
index 00000000..bdd209f8
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/index.md
@@ -0,0 +1,18 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpRequest](index.md)
+
+# OpenId4VpRequest
+
+[androidJvm]\
+class [OpenId4VpRequest](index.md)(val presentationDefinition: PresentationDefinition) : Request
+
+## Constructors
+
+| | |
+|---|---|
+| [OpenId4VpRequest](-open-id4-vp-request.md) | [androidJvm]
constructor(presentationDefinition: PresentationDefinition) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [presentationDefinition](presentation-definition.md) | [androidJvm]
val [presentationDefinition](presentation-definition.md): PresentationDefinition |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/presentation-definition.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/presentation-definition.md
new file mode 100644
index 00000000..da9743c3
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/presentation-definition.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4VpRequest](index.md)/[presentationDefinition](presentation-definition.md)
+
+# presentationDefinition
+
+[androidJvm]\
+val [presentationDefinition](presentation-definition.md): PresentationDefinition
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/-open-id4vp-manager.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/-open-id4vp-manager.md
index 38cf10f9..e616055b 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/-open-id4vp-manager.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/-open-id4vp-manager.md
@@ -3,4 +3,4 @@
# OpenId4vpManager
[androidJvm]\
-constructor(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](../-open-id4-vp-config/index.md), documentManager: DocumentManager)
+constructor(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](../-open-id4-vp-config/index.md), responseGenerator: [OpenId4VpCBORResponseGeneratorImpl](../-open-id4-vp-c-b-o-r-response-generator-impl/index.md))
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md
index fd1d79d0..eb960fb8 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md
@@ -3,13 +3,13 @@
# OpenId4vpManager
[androidJvm]\
-class [OpenId4vpManager](index.md)(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](../-open-id4-vp-config/index.md), documentManager: DocumentManager) : TransferEvent.Listenable
+class [OpenId4vpManager](index.md)(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](../-open-id4-vp-config/index.md), val responseGenerator: [OpenId4VpCBORResponseGeneratorImpl](../-open-id4-vp-c-b-o-r-response-generator-impl/index.md)) : TransferEvent.Listenable
## Constructors
| | |
|---|---|
-| [OpenId4vpManager](-open-id4vp-manager.md) | [androidJvm]
constructor(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](../-open-id4-vp-config/index.md), documentManager: DocumentManager) |
+| [OpenId4vpManager](-open-id4vp-manager.md) | [androidJvm]
constructor(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](../-open-id4-vp-config/index.md), responseGenerator: [OpenId4VpCBORResponseGeneratorImpl](../-open-id4-vp-c-b-o-r-response-generator-impl/index.md)) |
## Functions
@@ -22,4 +22,9 @@ class [OpenId4vpManager](index.md)(context: [Context](https://developer.android.
| [resolveRequestUri](resolve-request-uri.md) | [androidJvm]
fun [resolveRequestUri](resolve-request-uri.md)(openid4VPURI: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html))
Resolve a request uri |
| [sendResponse](send-response.md) | [androidJvm]
fun [sendResponse](send-response.md)(deviceResponse: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html))
Sends a response to the verifier |
| [setExecutor](set-executor.md) | [androidJvm]
fun [setExecutor](set-executor.md)(executor: [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html))
Setting the `executor` is optional and defines the executor that will be used to execute the callback. If the `executor` is not defined, the callback will be executed on the main thread. |
-| [setReaderTrustStore](set-reader-trust-store.md) | [androidJvm]
fun [setReaderTrustStore](set-reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4vpManager](index.md)
Set a ReaderTrustStore (optionally) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [responseGenerator](response-generator.md) | [androidJvm]
val [responseGenerator](response-generator.md): [OpenId4VpCBORResponseGeneratorImpl](../-open-id4-vp-c-b-o-r-response-generator-impl/index.md) |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/response-generator.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/response-generator.md
new file mode 100644
index 00000000..c0d3bfbf
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/response-generator.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4vpManager](index.md)/[responseGenerator](response-generator.md)
+
+# responseGenerator
+
+[androidJvm]\
+val [responseGenerator](response-generator.md): [OpenId4VpCBORResponseGeneratorImpl](../-open-id4-vp-c-b-o-r-response-generator-impl/index.md)
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/set-reader-trust-store.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/set-reader-trust-store.md
deleted file mode 100644
index 538b8c41..00000000
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/set-reader-trust-store.md
+++ /dev/null
@@ -1,8 +0,0 @@
-//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.transfer.openid4vp](../index.md)/[OpenId4vpManager](index.md)/[setReaderTrustStore](set-reader-trust-store.md)
-
-# setReaderTrustStore
-
-[androidJvm]\
-fun [setReaderTrustStore](set-reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [OpenId4vpManager](index.md)
-
-Set a ReaderTrustStore (optionally)
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/index.md
index 81b5781d..a7b3e5ee 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/index.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/index.md
@@ -8,9 +8,13 @@
|---|---|
| [ClientId](index.md#-875823108%2FClasslikes%2F1615067946) | [androidJvm]
typealias [ClientId](index.md#-875823108%2FClasslikes%2F1615067946) = [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
| [ClientIdScheme](-client-id-scheme/index.md) | [androidJvm]
interface [ClientIdScheme](-client-id-scheme/index.md) |
+| [DeviceResponseBytes](index.md#943895756%2FClasslikes%2F1615067946) | [androidJvm]
typealias [DeviceResponseBytes](index.md#943895756%2FClasslikes%2F1615067946) = [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html) |
| [EncryptionAlgorithm](-encryption-algorithm/index.md) | [androidJvm]
interface [EncryptionAlgorithm](-encryption-algorithm/index.md) |
| [EncryptionMethod](-encryption-method/index.md) | [androidJvm]
interface [EncryptionMethod](-encryption-method/index.md) |
+| [OpenId4VpCBORResponse](-open-id4-vp-c-b-o-r-response/index.md) | [androidJvm]
class [OpenId4VpCBORResponse](-open-id4-vp-c-b-o-r-response/index.md)(val deviceResponseBytes: [DeviceResponseBytes](index.md#943895756%2FClasslikes%2F1615067946)) : Response |
+| [OpenId4VpCBORResponseGeneratorImpl](-open-id4-vp-c-b-o-r-response-generator-impl/index.md) | [androidJvm]
class [OpenId4VpCBORResponseGeneratorImpl](-open-id4-vp-c-b-o-r-response-generator-impl/index.md)(documentsResolver: DocumentsResolver, storageEngine: StorageEngine, secureArea: AndroidKeystoreSecureArea) : ResponseGenerator<[OpenId4VpRequest](-open-id4-vp-request/index.md)>
OpenId4VpCBORResponseGeneratorImpl class is used for parsing a request (Presentation Definition) and generating the DeviceResponse |
| [OpenId4VpConfig](-open-id4-vp-config/index.md) | [androidJvm]
class [OpenId4VpConfig](-open-id4-vp-config/index.md)
Configuration for the OpenId4Vp transfer. |
-| [OpenId4vpManager](-open-id4vp-manager/index.md) | [androidJvm]
class [OpenId4vpManager](-open-id4vp-manager/index.md)(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](-open-id4-vp-config/index.md), documentManager: DocumentManager) : TransferEvent.Listenable |
+| [OpenId4vpManager](-open-id4vp-manager/index.md) | [androidJvm]
class [OpenId4vpManager](-open-id4vp-manager/index.md)(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), openId4VpConfig: [OpenId4VpConfig](-open-id4-vp-config/index.md), val responseGenerator: [OpenId4VpCBORResponseGeneratorImpl](-open-id4-vp-c-b-o-r-response-generator-impl/index.md)) : TransferEvent.Listenable |
+| [OpenId4VpRequest](-open-id4-vp-request/index.md) | [androidJvm]
class [OpenId4VpRequest](-open-id4-vp-request/index.md)(val presentationDefinition: PresentationDefinition) : Request |
| [PreregisteredVerifier](-preregistered-verifier/index.md) | [androidJvm]
data class [PreregisteredVerifier](-preregistered-verifier/index.md)(var clientId: [ClientId](index.md#-875823108%2FClasslikes%2F1615067946), var verifierApi: [VerifierApi](index.md#-1538977700%2FClasslikes%2F1615067946)) |
| [VerifierApi](index.md#-1538977700%2FClasslikes%2F1615067946) | [androidJvm]
typealias [VerifierApi](index.md#-1538977700%2FClasslikes%2F1615067946) = [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/-default-nfc-engagement-service.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/-default-nfc-engagement-service.md
new file mode 100644
index 00000000..b0a40ee0
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/-default-nfc-engagement-service.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.util](../index.md)/[DefaultNfcEngagementService](index.md)/[DefaultNfcEngagementService](-default-nfc-engagement-service.md)
+
+# DefaultNfcEngagementService
+
+[androidJvm]\
+constructor()
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md
new file mode 100644
index 00000000..b10adb28
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md
@@ -0,0 +1,185 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.util](../index.md)/[DefaultNfcEngagementService](index.md)
+
+# DefaultNfcEngagementService
+
+[androidJvm]\
+class [DefaultNfcEngagementService](index.md) : NfcEngagementService
+
+NFC Engagement Service
+
+Add the service to your application's manifest file to enable nfc engagement functionality, as in the following example:
+
+```xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+```
+
+## Constructors
+
+| | |
+|---|---|
+| [DefaultNfcEngagementService](-default-nfc-engagement-service.md) | [androidJvm]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [bindIsolatedService](index.md#-936523269%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindIsolatedService](index.md#-936523269%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p3: [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html), p4: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [bindService](index.md#2022335150%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindService](index.md#2022335150%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
open override fun [bindService](index.md#-764880913%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html), p3: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [bindServiceAsUser](index.md#-365950384%2FFunctions%2F1615067946) | [androidJvm]
open override fun [bindServiceAsUser](index.md#-365950384%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [checkCallingOrSelfPermission](index.md#-315710025%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfPermission](index.md#-315710025%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingOrSelfUriPermission](index.md#832829402%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfUriPermission](index.md#832829402%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingOrSelfUriPermissions](index.md#-1013919811%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingOrSelfUriPermissions](index.md#-1013919811%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
+| [checkCallingPermission](index.md#893466952%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingPermission](index.md#893466952%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingUriPermission](index.md#1348946283%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingUriPermission](index.md#1348946283%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkCallingUriPermissions](index.md#1966715980%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkCallingUriPermissions](index.md#1966715980%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
+| [checkPermission](index.md#-1698615512%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkPermission](index.md#-1698615512%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkSelfPermission](index.md#1389999028%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkSelfPermission](index.md#1389999028%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkUriPermission](index.md#2104701707%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkUriPermission](index.md#2104701707%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)
open override fun [checkUriPermission](index.md#1290765996%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)?, p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [checkUriPermissions](index.md#-1934262484%2FFunctions%2F1615067946) | [androidJvm]
open override fun [checkUriPermissions](index.md#-1934262484%2FFunctions%2F1615067946)(p0: [MutableList](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-list/index.html)<[Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)>, p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html) |
+| [clearWallpaper](index.md#-1564108334%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~clearWallpaper~~](index.md#-1564108334%2FFunctions%2F1615067946)() |
+| [createAttributionContext](index.md#1250560058%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createAttributionContext](index.md#1250560058%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createConfigurationContext](index.md#-1154826084%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createConfigurationContext](index.md#-1154826084%2FFunctions%2F1615067946)(p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createContext](index.md#1358229057%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createContext](index.md#1358229057%2FFunctions%2F1615067946)(p0: [ContextParams](https://developer.android.com/reference/kotlin/android/content/ContextParams.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createContextForSplit](index.md#1654585621%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createContextForSplit](index.md#1654585621%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createDeviceProtectedStorageContext](index.md#-2131343837%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createDeviceProtectedStorageContext](index.md#-2131343837%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createDisplayContext](index.md#-296982170%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createDisplayContext](index.md#-296982170%2FFunctions%2F1615067946)(p0: [Display](https://developer.android.com/reference/kotlin/android/view/Display.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createPackageContext](index.md#212314043%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createPackageContext](index.md#212314043%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [createWindowContext](index.md#-1685281025%2FFunctions%2F1615067946) | [androidJvm]
open override fun [createWindowContext](index.md#-1685281025%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html)
open override fun [createWindowContext](index.md#291506760%2FFunctions%2F1615067946)(p0: [Display](https://developer.android.com/reference/kotlin/android/view/Display.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [databaseList](index.md#-2015717810%2FFunctions%2F1615067946) | [androidJvm]
open override fun [databaseList](index.md#-2015717810%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> |
+| [deleteDatabase](index.md#1521633731%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteDatabase](index.md#1521633731%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [deleteFile](index.md#-1794089596%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteFile](index.md#-1794089596%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [deleteSharedPreferences](index.md#-1249690503%2FFunctions%2F1615067946) | [androidJvm]
open override fun [deleteSharedPreferences](index.md#-1249690503%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [enforceCallingOrSelfPermission](index.md#-373876383%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingOrSelfPermission](index.md#-373876383%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [enforceCallingOrSelfUriPermission](index.md#1996391077%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingOrSelfUriPermission](index.md#1996391077%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
+| [enforceCallingPermission](index.md#577330480%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingPermission](index.md#577330480%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [enforceCallingUriPermission](index.md#370165494%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceCallingUriPermission](index.md#370165494%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
+| [enforcePermission](index.md#-1911070116%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforcePermission](index.md#-1911070116%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [enforceUriPermission](index.md#-2129139702%2FFunctions%2F1615067946) | [androidJvm]
open override fun [enforceUriPermission](index.md#-2129139702%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html))
open override fun [enforceUriPermission](index.md#355973580%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html)?, p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [fileList](index.md#1346241261%2FFunctions%2F1615067946) | [androidJvm]
open override fun [fileList](index.md#1346241261%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)> |
+| [getApplication](index.md#1881791868%2FFunctions%2F1615067946) | [androidJvm]
fun [getApplication](index.md#1881791868%2FFunctions%2F1615067946)(): [Application](https://developer.android.com/reference/kotlin/android/app/Application.html) |
+| [getApplicationContext](index.md#720574270%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getApplicationContext](index.md#720574270%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [getApplicationInfo](index.md#875309695%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getApplicationInfo](index.md#875309695%2FFunctions%2F1615067946)(): [ApplicationInfo](https://developer.android.com/reference/kotlin/android/content/pm/ApplicationInfo.html) |
+| [getAssets](index.md#929224314%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAssets](index.md#929224314%2FFunctions%2F1615067946)(): [AssetManager](https://developer.android.com/reference/kotlin/android/content/res/AssetManager.html) |
+| [getAttributionSource](index.md#745115299%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAttributionSource](index.md#745115299%2FFunctions%2F1615067946)(): [AttributionSource](https://developer.android.com/reference/kotlin/android/content/AttributionSource.html) |
+| [getAttributionTag](index.md#-2059689374%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getAttributionTag](index.md#-2059689374%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? |
+| [getBaseContext](index.md#1836627711%2FFunctions%2F1615067946) | [androidJvm]
open fun [getBaseContext](index.md#1836627711%2FFunctions%2F1615067946)(): [Context](https://developer.android.com/reference/kotlin/android/content/Context.html) |
+| [getCacheDir](index.md#-803358382%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getCacheDir](index.md#-803358382%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getClassLoader](index.md#1242041746%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getClassLoader](index.md#1242041746%2FFunctions%2F1615067946)(): [ClassLoader](https://developer.android.com/reference/kotlin/java/lang/ClassLoader.html) |
+| [getCodeCacheDir](index.md#1138511077%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getCodeCacheDir](index.md#1138511077%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getColor](index.md#1612713529%2FFunctions%2F1615067946) | [androidJvm]
fun [getColor](index.md#1612713529%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [getColorStateList](index.md#49622702%2FFunctions%2F1615067946) | [androidJvm]
fun [getColorStateList](index.md#49622702%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [ColorStateList](https://developer.android.com/reference/kotlin/android/content/res/ColorStateList.html) |
+| [getContentResolver](index.md#-1924753378%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getContentResolver](index.md#-1924753378%2FFunctions%2F1615067946)(): [ContentResolver](https://developer.android.com/reference/kotlin/android/content/ContentResolver.html) |
+| [getDatabasePath](index.md#1182335943%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDatabasePath](index.md#1182335943%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getDataDir](index.md#666732474%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDataDir](index.md#666732474%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getDir](index.md#264472777%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDir](index.md#264472777%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getDisplay](index.md#488073307%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getDisplay](index.md#488073307%2FFunctions%2F1615067946)(): [Display](https://developer.android.com/reference/kotlin/android/view/Display.html)? |
+| [getDrawable](index.md#-953197380%2FFunctions%2F1615067946) | [androidJvm]
fun [getDrawable](index.md#-953197380%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html)? |
+| [getExternalCacheDir](index.md#544398023%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalCacheDir](index.md#544398023%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html)? |
+| [getExternalCacheDirs](index.md#1262724320%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalCacheDirs](index.md#1262724320%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getExternalFilesDir](index.md#-1987272293%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalFilesDir](index.md#-1987272293%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?): [File](https://developer.android.com/reference/kotlin/java/io/File.html)? |
+| [getExternalFilesDirs](index.md#-2070683431%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalFilesDirs](index.md#-2070683431%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getExternalMediaDirs](index.md#1078368190%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getExternalMediaDirs](index.md#1078368190%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getFilesDir](index.md#-2018610489%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getFilesDir](index.md#-2018610489%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getFileStreamPath](index.md#-1523976920%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getFileStreamPath](index.md#-1523976920%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getForegroundServiceType](index.md#857055552%2FFunctions%2F1615067946) | [androidJvm]
fun [getForegroundServiceType](index.md#857055552%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [getMainExecutor](index.md#1205639281%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getMainExecutor](index.md#1205639281%2FFunctions%2F1615067946)(): [Executor](https://developer.android.com/reference/kotlin/java/util/concurrent/Executor.html) |
+| [getMainLooper](index.md#400244339%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getMainLooper](index.md#400244339%2FFunctions%2F1615067946)(): [Looper](https://developer.android.com/reference/kotlin/android/os/Looper.html) |
+| [getNoBackupFilesDir](index.md#1811406884%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getNoBackupFilesDir](index.md#1811406884%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getObbDir](index.md#252787007%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getObbDir](index.md#252787007%2FFunctions%2F1615067946)(): [File](https://developer.android.com/reference/kotlin/java/io/File.html) |
+| [getObbDirs](index.md#812717416%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getObbDirs](index.md#812717416%2FFunctions%2F1615067946)(): [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[File](https://developer.android.com/reference/kotlin/java/io/File.html)> |
+| [getOpPackageName](index.md#-814243443%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getOpPackageName](index.md#-814243443%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getPackageCodePath](index.md#-1681869883%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageCodePath](index.md#-1681869883%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getPackageManager](index.md#224992758%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageManager](index.md#224992758%2FFunctions%2F1615067946)(): [PackageManager](https://developer.android.com/reference/kotlin/android/content/pm/PackageManager.html) |
+| [getPackageName](index.md#-1158183924%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageName](index.md#-1158183924%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getPackageResourcePath](index.md#512700484%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getPackageResourcePath](index.md#512700484%2FFunctions%2F1615067946)(): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getParams](index.md#-417920553%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getParams](index.md#-417920553%2FFunctions%2F1615067946)(): [ContextParams](https://developer.android.com/reference/kotlin/android/content/ContextParams.html)? |
+| [getResources](index.md#464732248%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getResources](index.md#464732248%2FFunctions%2F1615067946)(): [Resources](https://developer.android.com/reference/kotlin/android/content/res/Resources.html) |
+| [getSharedPreferences](index.md#1470789827%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSharedPreferences](index.md#1470789827%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html) |
+| [getString](index.md#-1083071447%2FFunctions%2F1615067946) | [androidJvm]
fun [getString](index.md#-1083071447%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)
fun [getString](index.md#1906424039%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), vararg p1: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
+| [getSystemService](index.md#-1033418729%2FFunctions%2F1615067946) | [androidJvm]
fun <[T](index.md#-1033418729%2FFunctions%2F1615067946) : [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)> [getSystemService](index.md#-1033418729%2FFunctions%2F1615067946)(p0: [Class](https://developer.android.com/reference/kotlin/java/lang/Class.html)<[T](index.md#-1033418729%2FFunctions%2F1615067946)>): [T](index.md#-1033418729%2FFunctions%2F1615067946)
open override fun [getSystemService](index.md#-1204794803%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html) |
+| [getSystemServiceName](index.md#-1607307550%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getSystemServiceName](index.md#-1607307550%2FFunctions%2F1615067946)(p0: [Class](https://developer.android.com/reference/kotlin/java/lang/Class.html)<*>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)? |
+| [getText](index.md#-1417941683%2FFunctions%2F1615067946) | [androidJvm]
fun [getText](index.md#-1417941683%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html) |
+| [getTheme](index.md#-1761986252%2FFunctions%2F1615067946) | [androidJvm]
open override fun [getTheme](index.md#-1761986252%2FFunctions%2F1615067946)(): [Resources.Theme](https://developer.android.com/reference/kotlin/android/content/res/Resources.Theme.html) |
+| [getWallpaper](index.md#-721579237%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaper~~](index.md#-721579237%2FFunctions%2F1615067946)(): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html) |
+| [getWallpaperDesiredMinimumHeight](index.md#-662155776%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaperDesiredMinimumHeight~~](index.md#-662155776%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [getWallpaperDesiredMinimumWidth](index.md#295343597%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~getWallpaperDesiredMinimumWidth~~](index.md#295343597%2FFunctions%2F1615067946)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [grantUriPermission](index.md#715282874%2FFunctions%2F1615067946) | [androidJvm]
open override fun [grantUriPermission](index.md#715282874%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [isDeviceProtectedStorage](index.md#1565618010%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isDeviceProtectedStorage](index.md#1565618010%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [isRestricted](index.md#-1776278686%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isRestricted](index.md#-1776278686%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [isUiContext](index.md#2131014658%2FFunctions%2F1615067946) | [androidJvm]
open override fun [isUiContext](index.md#2131014658%2FFunctions%2F1615067946)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [moveDatabaseFrom](index.md#-1531556325%2FFunctions%2F1615067946) | [androidJvm]
open override fun [moveDatabaseFrom](index.md#-1531556325%2FFunctions%2F1615067946)(p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [moveSharedPreferencesFrom](index.md#-336755131%2FFunctions%2F1615067946) | [androidJvm]
open override fun [moveSharedPreferencesFrom](index.md#-336755131%2FFunctions%2F1615067946)(p0: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [notifyUnhandled](index.md#608345424%2FFunctions%2F1615067946) | [androidJvm]
fun [notifyUnhandled](index.md#608345424%2FFunctions%2F1615067946)() |
+| [obtainStyledAttributes](index.md#1790084466%2FFunctions%2F1615067946) | [androidJvm]
fun [obtainStyledAttributes](index.md#1790084466%2FFunctions%2F1615067946)(p0: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](index.md#-1642243463%2FFunctions%2F1615067946)(p0: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)?, p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](index.md#-1436889597%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html)
fun [obtainStyledAttributes](index.md#1344552345%2FFunctions%2F1615067946)(p0: [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html)?, p1: [IntArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int-array/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html) |
+| [onBind](index.md#-313767196%2FFunctions%2F1615067946) | [androidJvm]
override fun [onBind](index.md#-313767196%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [IBinder](https://developer.android.com/reference/kotlin/android/os/IBinder.html)? |
+| [onConfigurationChanged](index.md#-26093835%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onConfigurationChanged](index.md#-26093835%2FFunctions%2F1615067946)(p0: [Configuration](https://developer.android.com/reference/kotlin/android/content/res/Configuration.html)) |
+| [onCreate](index.md#1680092504%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onCreate](index.md#1680092504%2FFunctions%2F1615067946)() |
+| [onDeactivated](index.md#793327796%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onDeactivated](index.md#793327796%2FFunctions%2F1615067946)(reason: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [onDestroy](index.md#392042185%2FFunctions%2F1615067946) | [androidJvm]
open fun [onDestroy](index.md#392042185%2FFunctions%2F1615067946)() |
+| [onLowMemory](index.md#914780206%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onLowMemory](index.md#914780206%2FFunctions%2F1615067946)() |
+| [onRebind](index.md#1824585879%2FFunctions%2F1615067946) | [androidJvm]
open fun [onRebind](index.md#1824585879%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)) |
+| [onStart](index.md#-886123252%2FFunctions%2F1615067946) | [androidJvm]
open fun [~~onStart~~](index.md#-886123252%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [onStartCommand](index.md#-1759072834%2FFunctions%2F1615067946) | [androidJvm]
open fun [onStartCommand](index.md#-1759072834%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
+| [onTaskRemoved](index.md#1414326104%2FFunctions%2F1615067946) | [androidJvm]
open fun [onTaskRemoved](index.md#1414326104%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)) |
+| [onTrimMemory](index.md#-572197262%2FFunctions%2F1615067946) | [androidJvm]
open override fun [onTrimMemory](index.md#-572197262%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [onUnbind](index.md#-1324451215%2FFunctions%2F1615067946) | [androidJvm]
open fun [onUnbind](index.md#-1324451215%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [openFileInput](index.md#-436133483%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openFileInput](index.md#-436133483%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)): [FileInputStream](https://developer.android.com/reference/kotlin/java/io/FileInputStream.html) |
+| [openFileOutput](index.md#-1288028519%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openFileOutput](index.md#-1288028519%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [FileOutputStream](https://developer.android.com/reference/kotlin/java/io/FileOutputStream.html) |
+| [openOrCreateDatabase](index.md#-352848248%2FFunctions%2F1615067946) | [androidJvm]
open override fun [openOrCreateDatabase](index.md#-352848248%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [SQLiteDatabase.CursorFactory](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.CursorFactory.html)): [SQLiteDatabase](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html)
open override fun [openOrCreateDatabase](index.md#1846808329%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [SQLiteDatabase.CursorFactory](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.CursorFactory.html), p3: [DatabaseErrorHandler](https://developer.android.com/reference/kotlin/android/database/DatabaseErrorHandler.html)?): [SQLiteDatabase](https://developer.android.com/reference/kotlin/android/database/sqlite/SQLiteDatabase.html) |
+| [peekWallpaper](index.md#-1166010676%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~peekWallpaper~~](index.md#-1166010676%2FFunctions%2F1615067946)(): [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html) |
+| [processCommandApdu](index.md#1128860506%2FFunctions%2F1615067946) | [androidJvm]
open override fun [processCommandApdu](index.md#1128860506%2FFunctions%2F1615067946)(commandApdu: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html), extras: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html) |
+| [registerComponentCallbacks](index.md#-995892082%2FFunctions%2F1615067946) | [androidJvm]
open override fun [registerComponentCallbacks](index.md#-995892082%2FFunctions%2F1615067946)(p0: [ComponentCallbacks](https://developer.android.com/reference/kotlin/android/content/ComponentCallbacks.html)) |
+| [registerReceiver](index.md#369060837%2FFunctions%2F1615067946) | [androidJvm]
open override fun [registerReceiver](index.md#369060837%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](index.md#180699224%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](index.md#1896280668%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?
open override fun [registerReceiver](index.md#-444475007%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p1: [IntentFilter](https://developer.android.com/reference/kotlin/android/content/IntentFilter.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)? |
+| [removeStickyBroadcast](index.md#-1734837009%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~removeStickyBroadcast~~](index.md#-1734837009%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)) |
+| [removeStickyBroadcastAsUser](index.md#588277431%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~removeStickyBroadcastAsUser~~](index.md#588277431%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)) |
+| [revokeSelfPermissionOnKill](index.md#71314554%2FFunctions%2F1615067946) | [androidJvm]
open fun [revokeSelfPermissionOnKill](index.md#71314554%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)) |
+| [revokeSelfPermissionsOnKill](index.md#-1222544766%2FFunctions%2F1615067946) | [androidJvm]
open override fun [revokeSelfPermissionsOnKill](index.md#-1222544766%2FFunctions%2F1615067946)(p0: [MutableCollection](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-collection/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>) |
+| [revokeUriPermission](index.md#-1459364395%2FFunctions%2F1615067946) | [androidJvm]
open override fun [revokeUriPermission](index.md#-1459364395%2FFunctions%2F1615067946)(p0: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open override fun [revokeUriPermission](index.md#-401097840%2FFunctions%2F1615067946)(p0: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), p1: [Uri](https://developer.android.com/reference/kotlin/android/net/Uri.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [sendBroadcast](index.md#689861098%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendBroadcast](index.md#689861098%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open override fun [sendBroadcast](index.md#281415540%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [sendBroadcastAsUser](index.md#288711986%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendBroadcastAsUser](index.md#288711986%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html))
open override fun [sendBroadcastAsUser](index.md#546382636%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?) |
+| [sendBroadcastWithMultiplePermissions](index.md#298882104%2FFunctions%2F1615067946) | [androidJvm]
open fun [sendBroadcastWithMultiplePermissions](index.md#298882104%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)>) |
+| [sendOrderedBroadcast](index.md#-2119529981%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendOrderedBroadcast](index.md#-2119529981%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?)
open override fun [sendOrderedBroadcast](index.md#2070291024%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
open override fun [sendOrderedBroadcast](index.md#-1131561336%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p4: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?)
open fun [sendOrderedBroadcast](index.md#1922483713%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p4: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p5: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?, p8: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendOrderedBroadcastAsUser](index.md#1495784840%2FFunctions%2F1615067946) | [androidJvm]
open override fun [sendOrderedBroadcastAsUser](index.md#1495784840%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p3: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p4: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p5: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p6: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p7: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendResponseApdu](index.md#-403200637%2FFunctions%2F1615067946) | [androidJvm]
fun [sendResponseApdu](index.md#-403200637%2FFunctions%2F1615067946)(p0: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)) |
+| [sendStickyBroadcast](index.md#112235123%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyBroadcast~~](index.md#112235123%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open override fun [~~sendStickyBroadcast~~](index.md#-118572358%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendStickyBroadcastAsUser](index.md#-669462981%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyBroadcastAsUser~~](index.md#-669462981%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html)) |
+| [sendStickyOrderedBroadcast](index.md#758100831%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyOrderedBroadcast~~](index.md#758100831%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p2: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p5: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [sendStickyOrderedBroadcastAsUser](index.md#1135629991%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~sendStickyOrderedBroadcastAsUser~~](index.md#1135629991%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [UserHandle](https://developer.android.com/reference/kotlin/android/os/UserHandle.html), p2: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)?, p3: [Handler](https://developer.android.com/reference/kotlin/android/os/Handler.html)?, p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p6: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [setTheme](index.md#1324511966%2FFunctions%2F1615067946) | [androidJvm]
open override fun [setTheme](index.md#1324511966%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [setWallpaper](index.md#-2108598200%2FFunctions%2F1615067946) | [androidJvm]
open override fun [~~setWallpaper~~](index.md#-2108598200%2FFunctions%2F1615067946)(p0: [Bitmap](https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html))
open override fun [~~setWallpaper~~](index.md#-659870931%2FFunctions%2F1615067946)(p0: [InputStream](https://developer.android.com/reference/kotlin/java/io/InputStream.html)) |
+| [startActivities](index.md#-1771892602%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startActivities](index.md#-1771892602%2FFunctions%2F1615067946)(p0: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)>)
open override fun [startActivities](index.md#-259889721%2FFunctions%2F1615067946)(p0: [Array](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html)<[Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)>, p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [startActivity](index.md#901188466%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startActivity](index.md#901188466%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
open override fun [startActivity](index.md#114936667%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html), p1: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [startForeground](index.md#-798229909%2FFunctions%2F1615067946) | [androidJvm]
fun [startForeground](index.md#-798229909%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Notification](https://developer.android.com/reference/kotlin/android/app/Notification.html))
fun [startForeground](index.md#1703969298%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p1: [Notification](https://developer.android.com/reference/kotlin/android/app/Notification.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [startForegroundService](index.md#-291854073%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startForegroundService](index.md#-291854073%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)? |
+| [startInstrumentation](index.md#-1028122110%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startInstrumentation](index.md#-1028122110%2FFunctions%2F1615067946)(p0: [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html), p1: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)?, p2: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [startIntentSender](index.md#-1854061746%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startIntentSender](index.md#-1854061746%2FFunctions%2F1615067946)(p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html))
open override fun [startIntentSender](index.md#1836477951%2FFunctions%2F1615067946)(p0: [IntentSender](https://developer.android.com/reference/kotlin/android/content/IntentSender.html), p1: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)?, p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p3: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p4: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p5: [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html)?) |
+| [startService](index.md#1648257764%2FFunctions%2F1615067946) | [androidJvm]
open override fun [startService](index.md#1648257764%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [ComponentName](https://developer.android.com/reference/kotlin/android/content/ComponentName.html)? |
+| [stopForeground](index.md#1605916310%2FFunctions%2F1615067946) | [androidJvm]
fun [~~stopForeground~~](index.md#1605916310%2FFunctions%2F1615067946)(p0: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html))
fun [stopForeground](index.md#-1662469777%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [stopSelf](index.md#-388277144%2FFunctions%2F1615067946) | [androidJvm]
fun [stopSelf](index.md#-388277144%2FFunctions%2F1615067946)()
fun [stopSelf](index.md#1063711750%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+| [stopSelfResult](index.md#-860745111%2FFunctions%2F1615067946) | [androidJvm]
fun [stopSelfResult](index.md#-860745111%2FFunctions%2F1615067946)(p0: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [stopService](index.md#784453104%2FFunctions%2F1615067946) | [androidJvm]
open override fun [stopService](index.md#784453104%2FFunctions%2F1615067946)(p0: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html)): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [unbindService](index.md#391044623%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unbindService](index.md#391044623%2FFunctions%2F1615067946)(p0: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html)) |
+| [unregisterComponentCallbacks](index.md#-151730923%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unregisterComponentCallbacks](index.md#-151730923%2FFunctions%2F1615067946)(p0: [ComponentCallbacks](https://developer.android.com/reference/kotlin/android/content/ComponentCallbacks.html)) |
+| [unregisterReceiver](index.md#1949248458%2FFunctions%2F1615067946) | [androidJvm]
open override fun [unregisterReceiver](index.md#1949248458%2FFunctions%2F1615067946)(p0: [BroadcastReceiver](https://developer.android.com/reference/kotlin/android/content/BroadcastReceiver.html)) |
+| [updateServiceGroup](index.md#178246991%2FFunctions%2F1615067946) | [androidJvm]
open override fun [updateServiceGroup](index.md#178246991%2FFunctions%2F1615067946)(p0: [ServiceConnection](https://developer.android.com/reference/kotlin/android/content/ServiceConnection.html), p1: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), p2: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [transferManager](transfer-manager.md) | [androidJvm]
open override val [transferManager](transfer-manager.md): TransferManager |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/transfer-manager.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/transfer-manager.md
new file mode 100644
index 00000000..10521ba5
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/transfer-manager.md
@@ -0,0 +1,6 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet.util](../index.md)/[DefaultNfcEngagementService](index.md)/[transferManager](transfer-manager.md)
+
+# transferManager
+
+[androidJvm]\
+open override val [transferManager](transfer-manager.md): TransferManager
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet.util/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/index.md
index 1a8738d3..3454fde8 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet.util/index.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet.util/index.md
@@ -7,3 +7,4 @@
| Name | Summary |
|---|---|
| [CBOR](-c-b-o-r/index.md) | [androidJvm]
object [CBOR](-c-b-o-r/index.md) |
+| [DefaultNfcEngagementService](-default-nfc-engagement-service/index.md) | [androidJvm]
class [DefaultNfcEngagementService](-default-nfc-engagement-service/index.md) : NfcEngagementService
NFC Engagement Service |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/create-response.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/create-response.md
deleted file mode 100644
index 8fe23987..00000000
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/create-response.md
+++ /dev/null
@@ -1,18 +0,0 @@
-//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet](../index.md)/[EudiWallet](index.md)/[createResponse](create-response.md)
-
-# createResponse
-
-[androidJvm]\
-fun [createResponse](create-response.md)(disclosedDocuments: DisclosedDocuments): ResponseResult
-
-Creates a response for the given [disclosedDocuments](create-response.md) that will be sent to the reader
-
-#### Return
-
-#### Parameters
-
-androidJvm
-
-| |
-|---|
-| disclosedDocuments |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/disable-n-f-c-engagement.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/disable-n-f-c-engagement.md
new file mode 100644
index 00000000..68b16ad2
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/disable-n-f-c-engagement.md
@@ -0,0 +1,16 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet](../index.md)/[EudiWallet](index.md)/[disableNFCEngagement](disable-n-f-c-engagement.md)
+
+# disableNFCEngagement
+
+[androidJvm]\
+fun [disableNFCEngagement](disable-n-f-c-engagement.md)(activity: [ComponentActivity](https://developer.android.com/reference/kotlin/androidx/activity/ComponentActivity.html))
+
+Disables the NFC engagement functionality
+
+#### Parameters
+
+androidJvm
+
+| |
+|---|
+| activity |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/enable-n-f-c-engagement.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/enable-n-f-c-engagement.md
new file mode 100644
index 00000000..d1ec5ef1
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/enable-n-f-c-engagement.md
@@ -0,0 +1,16 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet](../index.md)/[EudiWallet](index.md)/[enableNFCEngagement](enable-n-f-c-engagement.md)
+
+# enableNFCEngagement
+
+[androidJvm]\
+fun [enableNFCEngagement](enable-n-f-c-engagement.md)(activity: [ComponentActivity](https://developer.android.com/reference/kotlin/androidx/activity/ComponentActivity.html))
+
+Enables the NFC engagement functionality You must also add [DefaultNfcEngagementService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md) to your application's manifest file
+
+#### Parameters
+
+androidJvm
+
+| |
+|---|
+| activity |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/index.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/index.md
index c727dc96..bccea17b 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/index.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/index.md
@@ -36,8 +36,9 @@ EudiWallet.init(context, config)
| [addDocument](add-document.md) | [androidJvm]
fun [addDocument](add-document.md)(request: IssuanceRequest, data: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): AddDocumentResult
Add a document to the wallet |
| [addTransferEventListener](add-transfer-event-listener.md) | [androidJvm]
fun [addTransferEventListener](add-transfer-event-listener.md)(listener: TransferEvent.Listener): [EudiWallet](index.md)
Adds a transfer event listener in order to be notified about transfer events |
| [createIssuanceRequest](create-issuance-request.md) | [androidJvm]
fun [createIssuanceRequest](create-issuance-request.md)(docType: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html), hardwareBacked: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), attestationChallenge: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)? = null): CreateIssuanceRequestResult
Create an issuance request for the given [docType](create-issuance-request.md) |
-| [createResponse](create-response.md) | [androidJvm]
fun [createResponse](create-response.md)(disclosedDocuments: DisclosedDocuments): ResponseResult
Creates a response for the given [disclosedDocuments](create-response.md) that will be sent to the reader |
| [deleteDocumentById](delete-document-by-id.md) | [androidJvm]
fun [deleteDocumentById](delete-document-by-id.md)(documentId: DocumentId): DeleteDocumentResult
Delete the document with the given [documentId](delete-document-by-id.md) |
+| [disableNFCEngagement](disable-n-f-c-engagement.md) | [androidJvm]
fun [disableNFCEngagement](disable-n-f-c-engagement.md)(activity: [ComponentActivity](https://developer.android.com/reference/kotlin/androidx/activity/ComponentActivity.html))
Disables the NFC engagement functionality |
+| [enableNFCEngagement](enable-n-f-c-engagement.md) | [androidJvm]
fun [enableNFCEngagement](enable-n-f-c-engagement.md)(activity: [ComponentActivity](https://developer.android.com/reference/kotlin/androidx/activity/ComponentActivity.html))
Enables the NFC engagement functionality You must also add [DefaultNfcEngagementService](../../eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md) to your application's manifest file |
| [getDocumentById](get-document-by-id.md) | [androidJvm]
fun [getDocumentById](get-document-by-id.md)(documentId: DocumentId): Document?
Returns the document with the given [documentId](get-document-by-id.md) |
| [getDocuments](get-documents.md) | [androidJvm]
fun [getDocuments](get-documents.md)(): [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<Document>
Returns the list of documents |
| [init](init.md) | [androidJvm]
fun [init](init.md)(context: [Context](https://developer.android.com/reference/kotlin/android/content/Context.html), config: [EudiWalletConfig](../-eudi-wallet-config/index.md))
Initialize the sdk with the given [config](init.md) |
@@ -45,10 +46,12 @@ EudiWallet.init(context, config)
| [loadSampleData](load-sample-data.md) | [androidJvm]
fun [loadSampleData](load-sample-data.md)(sampleData: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html)): LoadSampleResult
Loads sample data into the wallet's document manager |
| [removeAllTransferEventListeners](remove-all-transfer-event-listeners.md) | [androidJvm]
fun [removeAllTransferEventListeners](remove-all-transfer-event-listeners.md)(): [EudiWallet](index.md)
Removes all transfer event listeners. |
| [removeTransferEventListener](remove-transfer-event-listener.md) | [androidJvm]
fun [removeTransferEventListener](remove-transfer-event-listener.md)(listener: TransferEvent.Listener): [EudiWallet](index.md)
Removes a transfer event listener. |
-| [sendResponse](send-response.md) | [androidJvm]
fun [sendResponse](send-response.md)(responseBytes: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html))
Sends the given [responseBytes](send-response.md) to the reader |
+| [resolveRequestUri](resolve-request-uri.md) | [androidJvm]
fun [resolveRequestUri](resolve-request-uri.md)(openid4VpURI: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html))
Start engagement for OpenId4Vp |
+| [sendResponse](send-response.md) | [androidJvm]
fun [sendResponse](send-response.md)(disclosedDocuments: DisclosedDocuments): ResponseResult
Send a response by giving DisclosedDocuments, i.e. the list of documents to be disclosed. The method returns a `ResponseResult` object, which can be one of the following: |
| [setReaderTrustStore](set-reader-trust-store.md) | [androidJvm]
fun [setReaderTrustStore](set-reader-trust-store.md)(readerTrustStore: ReaderTrustStore): [EudiWallet](index.md)
Sets the reader trust store with the readers' certificates that are trusted by the wallet |
| [setTrustedReaderCertificates](set-trusted-reader-certificates.md) | [androidJvm]
fun [setTrustedReaderCertificates](set-trusted-reader-certificates.md)(@[RawRes](https://developer.android.com/reference/kotlin/androidx/annotation/RawRes.html)vararg rawRes: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)): [EudiWallet](index.md)
Sets the readers' certificates from raw resources that are trusted by the wallet
[androidJvm]
fun [setTrustedReaderCertificates](set-trusted-reader-certificates.md)(trustedReaderCertificates: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[X509Certificate](https://developer.android.com/reference/kotlin/java/security/cert/X509Certificate.html)>): [EudiWallet](index.md)
Sets the readers' certificates that are trusted by the wallet |
-| [startEngagementToApp](start-engagement-to-app.md) | [androidJvm]
fun [startEngagementToApp](start-engagement-to-app.md)(intent: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
Starts the transfer process by engaging with the reader via appLink |
+| [startEngagementFromIntent](start-engagement-from-intent.md) | [androidJvm]
fun [startEngagementFromIntent](start-engagement-from-intent.md)(intent: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
Start engagement from an Intent. This will perform engagement for REST API or OpenId4Vp depending on the scheme. |
+| [startEngagementToApp](start-engagement-to-app.md) | [androidJvm]
fun [startEngagementToApp](start-engagement-to-app.md)(intent: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
Start engagement for REST API |
| [startQrEngagement](start-qr-engagement.md) | [androidJvm]
fun [startQrEngagement](start-qr-engagement.md)()
Starts the transfer process by engaging with the reader via QR code |
| [stopPresentation](stop-presentation.md) | [androidJvm]
fun [stopPresentation](stop-presentation.md)(sendSessionTerminationMessage: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = true, useTransportSpecificSessionTermination: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = false)
Stops the transfer process |
@@ -58,5 +61,3 @@ EudiWallet.init(context, config)
|---|---|
| [config](config.md) | [androidJvm]
val [config](config.md): [EudiWalletConfig](../-eudi-wallet-config/index.md)
The Config that used to initialize the sdk |
| [documentManager](document-manager.md) | [androidJvm]
val [documentManager](document-manager.md): SampleDocumentManager
Document manager |
-| [openId4vpManager](open-id4vp-manager.md) | [androidJvm]
val [openId4vpManager](open-id4vp-manager.md): [OpenId4vpManager](../../eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md)
OpenId4VP manager that can be used to verify OpenId4Vp requests |
-| [transferManager](transfer-manager.md) | [androidJvm]
val [transferManager](transfer-manager.md): TransferManager
Transfer manager |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/open-id4vp-manager.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/open-id4vp-manager.md
deleted file mode 100644
index 9c8d2f04..00000000
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/open-id4vp-manager.md
+++ /dev/null
@@ -1,20 +0,0 @@
-//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet](../index.md)/[EudiWallet](index.md)/[openId4vpManager](open-id4vp-manager.md)
-
-# openId4vpManager
-
-[androidJvm]\
-val [openId4vpManager](open-id4vp-manager.md): [OpenId4vpManager](../../eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md)
-
-OpenId4VP manager that can be used to verify OpenId4Vp requests
-
-#### See also
-
-| |
-|---|
-| [OpenId4vpManager](../../eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md) |
-
-#### Throws
-
-| | |
-|---|---|
-| [IllegalStateException](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-illegal-state-exception/index.html) | if [EudiWallet](index.md) is not firstly initialized via the [init](init.md) method or if the [EudiWalletConfig.openId4VPConfig](../-eudi-wallet-config/open-id4-v-p-config.md) is not set |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/resolve-request-uri.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/resolve-request-uri.md
new file mode 100644
index 00000000..875e2412
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/resolve-request-uri.md
@@ -0,0 +1,16 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet](../index.md)/[EudiWallet](index.md)/[resolveRequestUri](resolve-request-uri.md)
+
+# resolveRequestUri
+
+[androidJvm]\
+fun [resolveRequestUri](resolve-request-uri.md)(openid4VpURI: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html))
+
+Start engagement for OpenId4Vp
+
+#### Parameters
+
+androidJvm
+
+| |
+|---|
+| openid4VpURI |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/send-response.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/send-response.md
index 255fbc20..708eadfa 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/send-response.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/send-response.md
@@ -3,14 +3,25 @@
# sendResponse
[androidJvm]\
-fun [sendResponse](send-response.md)(responseBytes: [ByteArray](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html))
+fun [sendResponse](send-response.md)(disclosedDocuments: DisclosedDocuments): ResponseResult
-Sends the given [responseBytes](send-response.md) to the reader
+Send a response by giving DisclosedDocuments, i.e. the list of documents to be disclosed. The method returns a `ResponseResult` object, which can be one of the following:
+
+1.
+ `ResponseResult.Failure`: The response creation failed. The error can be retrieved from `responseResult.error`.
+2.
+ `ResponseResult.Success`: The response was created successfully. The response can be retrieved from `responseResult.response`.
+3.
+ `ResponseResult.UserAuthRequired`: The response creation requires user authentication.
+
+#### Return
+
+ResponseResult the result of the response
#### Parameters
androidJvm
-| |
-|---|
-| responseBytes |
+| | |
+|---|---|
+| disclosedDocuments | the list of documents to be disclosed in the response. |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-from-intent.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-from-intent.md
new file mode 100644
index 00000000..9cc9e279
--- /dev/null
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-from-intent.md
@@ -0,0 +1,16 @@
+//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet](../index.md)/[EudiWallet](index.md)/[startEngagementFromIntent](start-engagement-from-intent.md)
+
+# startEngagementFromIntent
+
+[androidJvm]\
+fun [startEngagementFromIntent](start-engagement-from-intent.md)(intent: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
+
+Start engagement from an Intent. This will perform engagement for REST API or OpenId4Vp depending on the scheme.
+
+#### Parameters
+
+androidJvm
+
+| | |
+|---|---|
+| intent | Intent |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-to-app.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-to-app.md
index f4bfb885..c9027b0d 100644
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-to-app.md
+++ b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-to-app.md
@@ -5,24 +5,12 @@
[androidJvm]\
fun [startEngagementToApp](start-engagement-to-app.md)(intent: [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html))
-Starts the transfer process by engaging with the reader via appLink
+Start engagement for REST API
#### Parameters
androidJvm
-| |
-|---|
-| intent |
-
-#### See also
-
-| |
-|---|
-| TransferManager.startEngagementToApp |
-
-#### Throws
-
| | |
|---|---|
-| [IllegalStateException](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-illegal-state-exception/index.html) | if [EudiWallet](index.md) is not firstly initialized via the [init](init.md) method |
+| intent | Intent |
diff --git a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/transfer-manager.md b/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/transfer-manager.md
deleted file mode 100644
index f47f4f6c..00000000
--- a/docs/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/transfer-manager.md
+++ /dev/null
@@ -1,20 +0,0 @@
-//[wallet-core](../../../index.md)/[eu.europa.ec.eudi.wallet](../index.md)/[EudiWallet](index.md)/[transferManager](transfer-manager.md)
-
-# transferManager
-
-[androidJvm]\
-val [transferManager](transfer-manager.md): TransferManager
-
-Transfer manager
-
-#### See also
-
-| |
-|---|
-| TransferManager |
-
-#### Throws
-
-| | |
-|---|---|
-| [IllegalStateException](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-illegal-state-exception/index.html) | if [EudiWallet](index.md) is not firstly initialized via the [init](init.md) method |
diff --git a/docs/wallet-core/package-list b/docs/wallet-core/package-list
index be38229c..a734ecf1 100644
--- a/docs/wallet-core/package-list
+++ b/docs/wallet-core/package-list
@@ -76,29 +76,50 @@ $dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/EncryptionMethod.A25
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/EncryptionMethod.A256GCM/name/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-encryption-method/-a256-g-c-m/name.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/EncryptionMethod///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-encryption-method/index.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/EncryptionMethod/name/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-encryption-method/name.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponse///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/index.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponse/OpenId4VpCBORResponse/#kotlin.ByteArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/-open-id4-vp-c-b-o-r-response.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponse/deviceResponseBytes/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response/device-response-bytes.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl.Builder///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/index.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl.Builder/Builder/#android.content.Context/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/-builder.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl.Builder/build/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/build.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl.Builder/documentsResolver/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/documents-resolver.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl.Builder/readerTrustStore/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/reader-trust-store.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl.Builder/readerTrustStore/#eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-builder/reader-trust-store.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/index.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl/OpenId4VpCBORResponseGeneratorImpl/#eu.europa.ec.eudi.iso18013.transfer.DocumentsResolver#com.android.identity.storage.StorageEngine#com.android.identity.android.securearea.AndroidKeystoreSecureArea/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/-open-id4-vp-c-b-o-r-response-generator-impl.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl/createResponse/#eu.europa.ec.eudi.iso18013.transfer.DisclosedDocuments/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/create-response.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl/parseRequest/#eu.europa.ec.eudi.wallet.transfer.openid4vp.OpenId4VpRequest/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/parse-request.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl/readerTrustStore/#eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/reader-trust-store.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpCBORResponseGeneratorImpl/setReaderTrustStore/#eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-c-b-o-r-response-generator-impl/set-reader-trust-store.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/index.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/Builder/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/-builder.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/build/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/build.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/clientIdSchemes/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/client-id-schemes.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/encryptionAlgorithms/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/encryption-algorithms.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/encryptionMethods/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/encryption-methods.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/scheme/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/scheme.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/withClientIdSchemes/#kotlin.collections.List[eu.europa.ec.eudi.wallet.transfer.openid4vp.ClientIdScheme]/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/with-client-id-schemes.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/withEncryptionAlgorithms/#kotlin.collections.List[eu.europa.ec.eudi.wallet.transfer.openid4vp.EncryptionAlgorithm]/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/with-encryption-algorithms.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/withEncryptionMethods/#kotlin.collections.List[eu.europa.ec.eudi.wallet.transfer.openid4vp.EncryptionMethod]/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/with-encryption-methods.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig.Builder/withScheme/#kotlin.String/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/-builder/with-scheme.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/index.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig/clientIdSchemes/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/client-id-schemes.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig/encryptionAlgorithms/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/encryption-algorithms.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig/encryptionMethods/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/encryption-methods.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpConfig/scheme/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-config/scheme.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpRequest///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/index.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpRequest/OpenId4VpRequest/#eu.europa.ec.eudi.prex.PresentationDefinition/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/-open-id4-vp-request.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4VpRequest/presentationDefinition/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4-vp-request/presentation-definition.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/index.md
-$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/OpenId4vpManager/#android.content.Context#eu.europa.ec.eudi.wallet.transfer.openid4vp.OpenId4VpConfig#eu.europa.ec.eudi.wallet.document.DocumentManager/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/-open-id4vp-manager.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/OpenId4vpManager/#android.content.Context#eu.europa.ec.eudi.wallet.transfer.openid4vp.OpenId4VpConfig#eu.europa.ec.eudi.wallet.transfer.openid4vp.OpenId4VpCBORResponseGeneratorImpl/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/-open-id4vp-manager.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/addTransferEventListener/#eu.europa.ec.eudi.iso18013.transfer.TransferEvent.Listener/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/add-transfer-event-listener.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/close/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/close.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/removeAllTransferEventListeners/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/remove-all-transfer-event-listeners.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/removeTransferEventListener/#eu.europa.ec.eudi.iso18013.transfer.TransferEvent.Listener/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/remove-transfer-event-listener.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/resolveRequestUri/#kotlin.String/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/resolve-request-uri.md
+$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/responseGenerator/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/response-generator.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/sendResponse/#kotlin.ByteArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/send-response.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/setExecutor/#java.util.concurrent.Executor/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/set-executor.md
-$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/OpenId4vpManager/setReaderTrustStore/#eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-open-id4vp-manager/set-reader-trust-store.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/PreregisteredVerifier///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-preregistered-verifier/index.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/PreregisteredVerifier/PreregisteredVerifier/#kotlin.String#kotlin.String/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-preregistered-verifier/-preregistered-verifier.md
$dokka.location:eu.europa.ec.eudi.wallet.transfer.openid4vp/PreregisteredVerifier/clientId/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.transfer.openid4vp/-preregistered-verifier/client-id.md
@@ -109,31 +130,35 @@ $dokka.location:eu.europa.ec.eudi.wallet.util/CBOR/cborDecode/#kotlin.ByteArray/
$dokka.location:eu.europa.ec.eudi.wallet.util/CBOR/cborDecodeByteString/#kotlin.ByteArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.util/-c-b-o-r/cbor-decode-byte-string.md
$dokka.location:eu.europa.ec.eudi.wallet.util/CBOR/cborEncode/#co.nstant.in.cbor.model.DataItem/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.util/-c-b-o-r/cbor-encode.md
$dokka.location:eu.europa.ec.eudi.wallet.util/CBOR/cborPrettyPrint/#kotlin.ByteArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.util/-c-b-o-r/cbor-pretty-print.md
+$dokka.location:eu.europa.ec.eudi.wallet.util/DefaultNfcEngagementService///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/index.md
+$dokka.location:eu.europa.ec.eudi.wallet.util/DefaultNfcEngagementService/DefaultNfcEngagementService/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/-default-nfc-engagement-service.md
+$dokka.location:eu.europa.ec.eudi.wallet.util/DefaultNfcEngagementService/transferManager/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet.util/-default-nfc-engagement-service/transfer-manager.md
$dokka.location:eu.europa.ec.eudi.wallet////PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/index.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/index.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/addDocument/#eu.europa.ec.eudi.wallet.document.IssuanceRequest#kotlin.ByteArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/add-document.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/addTransferEventListener/#eu.europa.ec.eudi.iso18013.transfer.TransferEvent.Listener/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/add-transfer-event-listener.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/config/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/config.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/createIssuanceRequest/#kotlin.String#kotlin.Boolean#kotlin.ByteArray?/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/create-issuance-request.md
-$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/createResponse/#eu.europa.ec.eudi.iso18013.transfer.DisclosedDocuments/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/create-response.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/deleteDocumentById/#kotlin.String/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/delete-document-by-id.md
+$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/disableNFCEngagement/#androidx.activity.ComponentActivity/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/disable-n-f-c-engagement.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/documentManager/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/document-manager.md
+$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/enableNFCEngagement/#androidx.activity.ComponentActivity/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/enable-n-f-c-engagement.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/getDocumentById/#kotlin.String/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/get-document-by-id.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/getDocuments/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/get-documents.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/init/#android.content.Context#eu.europa.ec.eudi.wallet.EudiWalletConfig/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/init.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/issueDocument/#kotlin.String#java.util.concurrent.Executor?#eu.europa.ec.eudi.wallet.document.issue.openid4vci.OpenId4VciManager.OnIssueCallback/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/issue-document.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/loadSampleData/#kotlin.ByteArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/load-sample-data.md
-$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/openId4vpManager/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/open-id4vp-manager.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/removeAllTransferEventListeners/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/remove-all-transfer-event-listeners.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/removeTransferEventListener/#eu.europa.ec.eudi.iso18013.transfer.TransferEvent.Listener/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/remove-transfer-event-listener.md
-$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/sendResponse/#kotlin.ByteArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/send-response.md
+$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/resolveRequestUri/#kotlin.String/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/resolve-request-uri.md
+$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/sendResponse/#eu.europa.ec.eudi.iso18013.transfer.DisclosedDocuments/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/send-response.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/setReaderTrustStore/#eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/set-reader-trust-store.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/setTrustedReaderCertificates/#kotlin.IntArray/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/set-trusted-reader-certificates.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/setTrustedReaderCertificates/#kotlin.collections.List[java.security.cert.X509Certificate]/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/set-trusted-reader-certificates.md
+$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/startEngagementFromIntent/#android.content.Intent/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-from-intent.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/startEngagementToApp/#android.content.Intent/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-engagement-to-app.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/startQrEngagement/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/start-qr-engagement.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/stopPresentation/#kotlin.Boolean#kotlin.Boolean/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/stop-presentation.md
-$dokka.location:eu.europa.ec.eudi.wallet/EudiWallet/transferManager/#/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet/transfer-manager.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWalletConfig.BleTransferMode///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet-config/-ble-transfer-mode/index.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWalletConfig.Builder///PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet-config/-builder/index.md
$dokka.location:eu.europa.ec.eudi.wallet/EudiWalletConfig.Builder/Builder/#android.content.Context/PointingToDeclaration/wallet-core/eu.europa.ec.eudi.wallet/-eudi-wallet-config/-builder/-builder.md
diff --git a/gradle.properties b/gradle.properties
index 0bd8c0c2..534eb654 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -43,7 +43,7 @@ systemProp.sonar.gradle.skipCompile=true
systemProp.sonar.coverage.jacoco.xmlReportPaths=build/reports/jacoco/testDebugUnitTestCoverage/testDebugUnitTestCoverage.xml,build/reports/jacoco/testReleaseUnitTestCoverage/testReleaseUnitTestCoverage.xml
systemProp.sonar.projectName=eudi-lib-android-wallet-core
-VERSION_NAME=0.4.0-SNAPSHOT
+VERSION_NAME=0.5.0-SNAPSHOT
SONATYPE_HOST=S01
SONATYPE_AUTOMATIC_RELEASE=false
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 4c45dd3e..138f18fc 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -9,7 +9,7 @@ dependencycheck = "8.4.2"
espresso-contrib = "3.5.1"
espresso-core = "3.5.1"
eudi-document-manager = "0.2.2-SNAPSHOT"
-eudi-iso18013-data-transfer = "0.1.1-SNAPSHOT"
+eudi-iso18013-data-transfer = "0.2.0-SNAPSHOT"
eudi-lib-jvm-openid4vci-kt = "0.1.2-SNAPSHOT"
eudi-lib-jvm-siop-openid4vp-kt = "0.3.0-SNAPSHOT"
gradle-plugin = "7.4.0"
diff --git a/licenses.md b/licenses.md
index 9dc56606..04fb706b 100644
--- a/licenses.md
+++ b/licenses.md
@@ -1,7 +1,7 @@
# EUDI Wallet Core library for Android
## Dependency License Report
-_2024-02-02 12:39:41 EET_
+_2024-02-08 18:41:45 EET_
## Apache License, Version 2.0
**1** **Group:** `androidx.appcompat` **Name:** `appcompat` **Version:** `1.6.1`
@@ -16,43 +16,49 @@ _2024-02-02 12:39:41 EET_
> - **POM Project URL**: [https://github.com/c-rack/cbor-java](https://github.com/c-rack/cbor-java)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
-**4** **Group:** `com.nimbusds` **Name:** `oauth2-oidc-sdk` **Version:** `11.8`
+**4** **Group:** `com.android.identity` **Name:** `identity-credential-android` **Version:** `20231002`
+> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
+
+**5** **Group:** `com.android.identity` **Name:** `identity-credential` **Version:** `20231002`
+> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
+
+**6** **Group:** `com.nimbusds` **Name:** `oauth2-oidc-sdk` **Version:** `11.8`
> - **Project URL**: [https://bitbucket.org/connect2id/oauth-2.0-sdk-with-openid-connect-extensions](https://bitbucket.org/connect2id/oauth-2.0-sdk-with-openid-connect-extensions)
> - **Manifest License**: Apache License, Version 2.0 (Not Packaged)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
-**5** **Group:** `org.jetbrains.kotlin` **Name:** `kotlin-parcelize-runtime` **Version:** `1.8.10`
+**7** **Group:** `org.jetbrains.kotlin` **Name:** `kotlin-stdlib-jdk8` **Version:** `1.9.0`
> - **POM Project URL**: [https://kotlinlang.org/](https://kotlinlang.org/)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
-**6** **Group:** `org.jetbrains.kotlin` **Name:** `kotlin-stdlib-jdk8` **Version:** `1.9.0`
+**8** **Group:** `org.jetbrains.kotlin` **Name:** `kotlin-parcelize-runtime` **Version:** `1.8.10`
> - **POM Project URL**: [https://kotlinlang.org/](https://kotlinlang.org/)
> - **POM License**: Apache License, Version 2.0 - [https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)
## BSD3
-**7** **Group:** `com.augustcellars.cose` **Name:** `cose-java` **Version:** `1.1.0`
+**9** **Group:** `com.augustcellars.cose` **Name:** `cose-java` **Version:** `1.1.0`
> - **POM Project URL**: [https://github.com/cose-wg/cose-java](https://github.com/cose-wg/cose-java)
> - **POM License**: BSD3 - [https://github.com/jimsch/COSE-JAVA/blob/master/LICENSE](https://github.com/jimsch/COSE-JAVA/blob/master/LICENSE)
## Bouncy Castle Licence
-**8** **Group:** `org.bouncycastle` **Name:** `bcpkix-jdk18on` **Version:** `1.77`
+**10** **Group:** `org.bouncycastle` **Name:** `bcprov-jdk18on` **Version:** `1.77`
> - **POM Project URL**: [https://www.bouncycastle.org/java.html](https://www.bouncycastle.org/java.html)
> - **POM License**: Bouncy Castle Licence - [https://www.bouncycastle.org/licence.html](https://www.bouncycastle.org/licence.html)
-**9** **Group:** `org.bouncycastle` **Name:** `bcprov-jdk18on` **Version:** `1.77`
+**11** **Group:** `org.bouncycastle` **Name:** `bcpkix-jdk18on` **Version:** `1.77`
> - **POM Project URL**: [https://www.bouncycastle.org/java.html](https://www.bouncycastle.org/java.html)
> - **POM License**: Bouncy Castle Licence - [https://www.bouncycastle.org/licence.html](https://www.bouncycastle.org/licence.html)
## Creative Commons Legal Code
-**10** **Group:** `com.upokecenter` **Name:** `cbor` **Version:** `4.5.2`
+**12** **Group:** `com.upokecenter` **Name:** `cbor` **Version:** `4.5.2`
> - **POM Project URL**: [https://github.com/peteroupc/CBOR-Java](https://github.com/peteroupc/CBOR-Java)
> - **POM License**: Creative Commons Legal Code - [https://creativecommons.org/publicdomain/zero/1.0/legalcode](https://creativecommons.org/publicdomain/zero/1.0/legalcode)
## Unknown
-**11** **Group:** `io.ktor` **Name:** `ktor-client-android` **Version:** `2.3.5`
+**13** **Group:** `io.ktor` **Name:** `ktor-client-android` **Version:** `2.3.5`
diff --git a/wallet-core/build.gradle b/wallet-core/build.gradle
index 941d5e09..6fda4766 100644
--- a/wallet-core/build.gradle
+++ b/wallet-core/build.gradle
@@ -93,6 +93,14 @@ dependencies {
// Siop-Openid4VP library
implementation libs.eudi.lib.jvm.siop.openid4vp.kt
+ // Google library
+ implementation (libs.identity.credential) {
+ exclude group: "org.bouncycastle"
+ }
+ implementation (libs.android.identity.credential) {
+ exclude group: "org.bouncycastle"
+ }
+
// CBOR
implementation libs.cbor
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/EudiWallet.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/EudiWallet.kt
index 0ef2e022..c8a890cc 100644
--- a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/EudiWallet.kt
+++ b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/EudiWallet.kt
@@ -19,6 +19,8 @@ package eu.europa.ec.eudi.wallet
import android.annotation.SuppressLint
import android.content.Context
import android.content.Intent
+import android.net.Uri
+import androidx.activity.ComponentActivity
import androidx.annotation.RawRes
import eu.europa.ec.eudi.iso18013.transfer.DisclosedDocuments
import eu.europa.ec.eudi.iso18013.transfer.DocumentsResolver
@@ -26,7 +28,11 @@ import eu.europa.ec.eudi.iso18013.transfer.RequestDocument
import eu.europa.ec.eudi.iso18013.transfer.ResponseResult
import eu.europa.ec.eudi.iso18013.transfer.TransferEvent
import eu.europa.ec.eudi.iso18013.transfer.TransferManager
+import eu.europa.ec.eudi.iso18013.transfer.engagement.NfcEngagementService
import eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore
+import eu.europa.ec.eudi.iso18013.transfer.response.DeviceRequest
+import eu.europa.ec.eudi.iso18013.transfer.response.DeviceResponse
+import eu.europa.ec.eudi.iso18013.transfer.response.ResponseGenerator
import eu.europa.ec.eudi.iso18013.transfer.retrieval.BleRetrievalMethod
import eu.europa.ec.eudi.wallet.document.AddDocumentResult
import eu.europa.ec.eudi.wallet.document.CreateIssuanceRequestResult
@@ -40,9 +46,12 @@ import eu.europa.ec.eudi.wallet.document.issue.IssueDocumentResult
import eu.europa.ec.eudi.wallet.document.issue.openid4vci.OpenId4VciManager
import eu.europa.ec.eudi.wallet.document.sample.LoadSampleResult
import eu.europa.ec.eudi.wallet.document.sample.SampleDocumentManager
+import eu.europa.ec.eudi.wallet.transfer.openid4vp.OpenId4VpCBORResponseGeneratorImpl
import eu.europa.ec.eudi.wallet.internal.getCertificate
import eu.europa.ec.eudi.wallet.internal.mainExecutor
+import eu.europa.ec.eudi.wallet.transfer.openid4vp.OpenId4VpCBORResponse
import eu.europa.ec.eudi.wallet.transfer.openid4vp.OpenId4vpManager
+import eu.europa.ec.eudi.wallet.util.DefaultNfcEngagementService
import java.security.cert.X509Certificate
import java.util.concurrent.Executor
@@ -77,6 +86,7 @@ object EudiWallet {
@Volatile
private lateinit var context: Context
private lateinit var _config: EudiWalletConfig
+ private var transferMode: TransferMode? = null
/**
* Initialize the sdk with the given [config]
@@ -125,15 +135,12 @@ object EudiWallet {
* @see [TransferManager]
* @throws IllegalStateException if [EudiWallet] is not firstly initialized via the [init] method
*/
- val transferManager: TransferManager by lazy {
+ internal val transferManager: TransferManager by lazy {
requireInit {
TransferManager.Builder(context)
.apply {
- _config.trustedReaderCertificates?.let {
- readerTrustStore = ReaderTrustStore.getDefault(it)
- }
retrievalMethods = deviceRetrievalMethods
- documentsResolver = transferManagerDocumentsResolver
+ responseGenerator = deviceResponseGenerator
}
.build()
}
@@ -145,24 +152,22 @@ object EudiWallet {
* @throws IllegalStateException if [EudiWallet] is not firstly initialized via the [init] method
* or if the [EudiWalletConfig.openId4VPConfig] is not set
*/
- @get:Throws(IllegalStateException::class)
- val openId4vpManager: OpenId4vpManager by lazy {
+ private val openId4vpManager: OpenId4vpManager? by lazy {
requireInit {
config.openId4VPConfig?.let { openId4VpConfig ->
OpenId4vpManager(
context,
openId4VpConfig,
- documentManager
+ openId4VpCBORResponseGenerator
).apply {
_config.trustedReaderCertificates?.let {
setReaderTrustStore(ReaderTrustStore.getDefault(it))
}
}
- } ?: throw IllegalStateException("OpenId4VpConfig is not set in configuration")
+ }
}
}
-
/**
* Returns the list of documents
* @see [DocumentManager.getDocuments]
@@ -282,8 +287,8 @@ object EudiWallet {
* @return [EudiWallet]
*/
fun setReaderTrustStore(readerTrustStore: ReaderTrustStore): EudiWallet {
- transferManager.setReaderTrustStore(readerTrustStore)
- openId4vpManager.setReaderTrustStore(readerTrustStore)
+ deviceResponseGenerator.setReaderTrustStore(readerTrustStore)
+ openId4VpCBORResponseGenerator.setReaderTrustStore(readerTrustStore)
return this
}
@@ -295,8 +300,8 @@ object EudiWallet {
* @return [EudiWallet]
*/
fun setTrustedReaderCertificates(trustedReaderCertificates: List) = apply {
- transferManager.setReaderTrustStore(ReaderTrustStore.getDefault(trustedReaderCertificates))
- openId4vpManager.setReaderTrustStore(ReaderTrustStore.getDefault(trustedReaderCertificates))
+ deviceResponseGenerator.setReaderTrustStore(ReaderTrustStore.getDefault(trustedReaderCertificates))
+ openId4VpCBORResponseGenerator.setReaderTrustStore(ReaderTrustStore.getDefault(trustedReaderCertificates))
}
/**
@@ -320,6 +325,7 @@ object EudiWallet {
*/
fun addTransferEventListener(listener: TransferEvent.Listener) = apply {
transferManager.addTransferEventListener(listener)
+ openId4vpManager?.addTransferEventListener(listener)
}
/**
@@ -333,6 +339,7 @@ object EudiWallet {
*/
fun removeTransferEventListener(listener: TransferEvent.Listener) = apply {
transferManager.removeTransferEventListener(listener)
+ openId4vpManager?.removeTransferEventListener(listener)
}
/**
@@ -344,6 +351,7 @@ object EudiWallet {
*/
fun removeAllTransferEventListeners() = apply {
transferManager.removeAllTransferEventListeners()
+ openId4vpManager?.removeAllTransferEventListeners()
}
/**
@@ -351,32 +359,126 @@ object EudiWallet {
* @see [TransferManager.startQrEngagement]
* @throws IllegalStateException if [EudiWallet] is not firstly initialized via the [init] method
*/
- fun startQrEngagement() = transferManager.startQrEngagement()
+ fun startQrEngagement() {
+ transferMode = TransferMode.ISO_18013_5
+ transferManager.startQrEngagement()
+ }
/**
- * Starts the transfer process by engaging with the reader via appLink
- *
- * @see [TransferManager.startEngagementToApp]
- * @param intent
- * @throws IllegalStateException if [EudiWallet] is not firstly initialized via the [init] method
+ * Enables the NFC engagement functionality
+ * You must also add [DefaultNfcEngagementService] to your application's manifest file
+ * @param activity
*/
- fun startEngagementToApp(intent: Intent) = transferManager.startEngagementToApp(intent)
+ fun enableNFCEngagement(activity: ComponentActivity) {
+ transferMode = TransferMode.ISO_18013_5
+ NfcEngagementService.enable(activity, DefaultNfcEngagementService::class.java)
+ }
/**
- * Creates a response for the given [disclosedDocuments] that will be sent to the reader
- *
- * @param disclosedDocuments
- * @return
+ * Disables the NFC engagement functionality
+ * @param activity
+ */
+ fun disableNFCEngagement(activity: ComponentActivity) {
+ NfcEngagementService.disable(activity)
+ }
+
+ /**
+ * Start engagement from an Intent.
+ * This will perform engagement for REST API or OpenId4Vp depending on the scheme.
+ * @param intent Intent
+ */
+ fun startEngagementFromIntent(intent: Intent) {
+ requireInit {
+ when (intent.scheme) {
+ "mdoc" -> {
+ transferMode = TransferMode.REST_API
+ transferManager.startEngagementToApp(intent)
+ }
+
+ _config.openId4VPConfig?.scheme -> { // openid4vp scheme
+ transferMode = TransferMode.OPENID4VP
+ openId4vpManager?.resolveRequestUri(intent.toUri(0))
+ }
+
+ else -> throw IllegalStateException("Not supported scheme")
+ }
+ }
+ }
+
+ /**
+ * Start engagement for REST API
+ * @param intent Intent
*/
- fun createResponse(disclosedDocuments: DisclosedDocuments): ResponseResult =
- transferManager.createResponse(disclosedDocuments)
+ fun startEngagementToApp(intent: Intent) {
+ when (intent.scheme) {
+ "mdoc" -> {
+ transferMode = TransferMode.REST_API
+ transferManager.startEngagementToApp(intent)
+ }
+ else -> throw IllegalStateException("Not supported scheme for REST API")
+ }
+ }
/**
- * Sends the given [responseBytes] to the reader
+ * Start engagement for OpenId4Vp
+ * @param openid4VpURI
+ */
+ fun resolveRequestUri(openid4VpURI: String) {
+ requireInit {
+ when (Uri.parse(openid4VpURI).scheme) {
+ _config.openId4VPConfig?.scheme -> { // openid4vp scheme
+ transferMode = TransferMode.OPENID4VP
+ openId4vpManager?.resolveRequestUri(openid4VpURI)
+ }
+
+ else -> throw IllegalStateException("Not supported scheme for OpenId4Vp")
+ }
+ }
+ }
+
+ /**
+ * Send a response by giving [DisclosedDocuments], i.e. the list of documents to be disclosed.
+ * The method returns a `ResponseResult` object, which can be one of the following:
+ *
+ * 1. `ResponseResult.Failure`: The response creation failed. The error can be retrieved from
+ * `responseResult.error`.
+ * 2. `ResponseResult.Success`: The response was created successfully. The response can be
+ * retrieved from `responseResult.response`.
+ * 3. `ResponseResult.UserAuthRequired`: The response creation requires user authentication.
*
- * @param responseBytes
+ * @param disclosedDocuments the list of documents to be disclosed in the response.
+ * @return [ResponseResult] the result of the response
*/
- fun sendResponse(responseBytes: ByteArray) = transferManager.sendResponse(responseBytes)
+ fun sendResponse(disclosedDocuments: DisclosedDocuments): ResponseResult {
+ // create response
+ val responseResult = when (transferMode) {
+ TransferMode.OPENID4VP ->
+ openId4vpManager?.responseGenerator?.createResponse(disclosedDocuments) ?:
+ ResponseResult.Failure(Throwable("Openid4vpManager has not been initialized properly"))
+
+ TransferMode.ISO_18013_5, TransferMode.REST_API ->
+ transferManager.responseGenerator.createResponse(disclosedDocuments)
+
+ else -> ResponseResult.Failure(Throwable("Not supported transfer mode"))
+ }
+
+ // send response if success
+ when (responseResult) {
+ is ResponseResult.Success -> {
+ when (transferMode) {
+ TransferMode.OPENID4VP ->
+ openId4vpManager?.sendResponse((responseResult.response as OpenId4VpCBORResponse).deviceResponseBytes)
+
+ TransferMode.ISO_18013_5, TransferMode.REST_API ->
+ transferManager.sendResponse((responseResult.response as DeviceResponse).deviceResponseBytes)
+
+ else -> ResponseResult.Failure(Throwable("Not supported transfer mode"))
+ }
+ }
+ else -> {}
+ }
+ return responseResult
+ }
/**
* Stops the transfer process
@@ -387,10 +489,14 @@ object EudiWallet {
fun stopPresentation(
sendSessionTerminationMessage: Boolean = true,
useTransportSpecificSessionTermination: Boolean = false,
- ) = transferManager.stopPresentation(
- sendSessionTerminationMessage,
- useTransportSpecificSessionTermination
- )
+ ) {
+ transferManager.stopPresentation(
+ sendSessionTerminationMessage,
+ useTransportSpecificSessionTermination
+ )
+ openId4vpManager?.close()
+ transferMode = null
+ }
private fun requireInit(block: () -> T): T {
if (!::context.isInitialized) {
@@ -423,4 +529,33 @@ object EudiWallet {
}
}
+ private val deviceResponseGenerator: ResponseGenerator by lazy {
+ requireInit {
+ ResponseGenerator.Builder(context)
+ .apply {
+ _config.trustedReaderCertificates?.let {
+ readerTrustStore = ReaderTrustStore.getDefault(it)
+ }
+ documentsResolver = transferManagerDocumentsResolver
+ }.build()
+ }
+ }
+
+ private val openId4VpCBORResponseGenerator: OpenId4VpCBORResponseGeneratorImpl by lazy {
+ requireInit {
+ OpenId4VpCBORResponseGeneratorImpl.Builder(context)
+ .apply {
+ _config.trustedReaderCertificates?.let {
+ readerTrustStore = ReaderTrustStore.getDefault(it)
+ }
+ documentsResolver = transferManagerDocumentsResolver
+ }.build()
+ }
+ }
+
+ private enum class TransferMode {
+ OPENID4VP,
+ REST_API,
+ ISO_18013_5
+ }
}
\ No newline at end of file
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/internal/OpenId4VpUtil.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/internal/OpenId4VpUtil.kt
deleted file mode 100644
index 56998cda..00000000
--- a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/internal/OpenId4VpUtil.kt
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (c) 2023 European Commission
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package eu.europa.ec.eudi.wallet.internal
-
-import eu.europa.ec.eudi.wallet.document.DocumentManager
-import eu.europa.ec.eudi.iso18013.transfer.DocItem
-import eu.europa.ec.eudi.iso18013.transfer.DocRequest
-import eu.europa.ec.eudi.iso18013.transfer.ReaderAuth
-import eu.europa.ec.eudi.iso18013.transfer.Request
-import eu.europa.ec.eudi.iso18013.transfer.RequestDocument
-import eu.europa.ec.eudi.prex.PresentationDefinition
-
-internal object OpenId4VpUtil {
-
- /* A Simple parser for presentation definition */
- @JvmSynthetic
- fun parsePresentationDefinition(
- documentManager: DocumentManager,
- presentationDefinition: PresentationDefinition,
- readerAuth: ReaderAuth?
- ): Request {
- val inputDescriptor =
- presentationDefinition.inputDescriptors.first()
- val fieldConstraints = inputDescriptor.constraints.fields()
-
- // find doc type
- val docType = fieldConstraints.find { fieldConstraint ->
- fieldConstraint.paths.first().value == "$.mdoc.doctype"
- }?.filter?.get("const").toString().replace("\"", "")
-
- // find namespace
- val namespace = fieldConstraints.find { fieldConstraint ->
- fieldConstraint.paths.first().value == "$.mdoc.namespace"
- }?.filter?.get("const").toString().replace("\"", "")
-
- // find requested fields
- val requestedFields =
- fieldConstraints.filter { fieldConstraint ->
- fieldConstraint.intentToRetain != null
- }.map { fieldConstraint ->
- fieldConstraint.paths.first().value.replace(
- "$.mdoc.",
- ""
- ).replace("\"", "")
- }
-
- return createRequest(documentManager, mapOf(docType to mapOf(namespace to requestedFields)), readerAuth)
- }
-
- private fun createRequest(
- documentManager: DocumentManager,
- requestedFields: Map>>,
- readerAuth: ReaderAuth?
- ): Request {
- val requestedDocuments = mutableListOf()
- requestedFields.forEach { document ->
- // create doc item
- val docItems = mutableListOf()
- document.value.forEach { (namespace, elementIds) ->
- elementIds.forEach { elementId ->
- docItems.add(DocItem(namespace, elementId))
- }
- }
- val docType = document.key
- documentManager.getDocuments().filter { it.docType == docType }
- .forEach { doc ->
- requestedDocuments.add(
- RequestDocument(
- doc.id,
- doc.docType,
- doc.name,
- doc.requiresUserAuth,
- DocRequest(docType, docItems, byteArrayOf(0), readerAuth)
- )
- )
- }
- }
- return Request(requestedDocuments)
- }
-}
\ No newline at end of file
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpCBORResponseGeneratorImpl.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpCBORResponseGeneratorImpl.kt
new file mode 100644
index 00000000..0ff96827
--- /dev/null
+++ b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpCBORResponseGeneratorImpl.kt
@@ -0,0 +1,270 @@
+/*
+ * Copyright (c) 2023 European Commission
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package eu.europa.ec.eudi.wallet.transfer.openid4vp
+
+import android.content.Context
+import android.util.Log
+import com.android.identity.android.securearea.AndroidKeystoreSecureArea
+import com.android.identity.android.storage.AndroidStorageEngine
+import com.android.identity.credential.CredentialRequest
+import com.android.identity.credential.CredentialStore
+import com.android.identity.credential.NameSpacedData
+import com.android.identity.mdoc.mso.StaticAuthDataParser
+import com.android.identity.mdoc.response.DeviceResponseGenerator
+import com.android.identity.mdoc.response.DocumentGenerator
+import com.android.identity.mdoc.util.MdocUtil
+import com.android.identity.securearea.SecureArea
+import com.android.identity.securearea.SecureAreaRepository
+import com.android.identity.storage.StorageEngine
+import com.android.identity.util.Constants
+import com.android.identity.util.Timestamp
+import eu.europa.ec.eudi.iso18013.transfer.DisclosedDocument
+import eu.europa.ec.eudi.iso18013.transfer.DisclosedDocuments
+import eu.europa.ec.eudi.iso18013.transfer.DocItem
+import eu.europa.ec.eudi.iso18013.transfer.DocRequest
+import eu.europa.ec.eudi.iso18013.transfer.DocumentsResolver
+import eu.europa.ec.eudi.iso18013.transfer.ReaderAuth
+import eu.europa.ec.eudi.iso18013.transfer.RequestDocument
+import eu.europa.ec.eudi.iso18013.transfer.RequestedDocumentData
+import eu.europa.ec.eudi.iso18013.transfer.ResponseResult
+import eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore
+import eu.europa.ec.eudi.iso18013.transfer.response.ResponseGenerator
+import eu.europa.ec.eudi.wallet.internal.Openid4VpX509CertificateTrust
+
+private const val TAG = "OpenId4VpCBORResponseGe"
+
+/**
+ * OpenId4VpCBORResponseGeneratorImpl class is used for parsing a request (Presentation Definition) and generating the DeviceResponse
+ *
+ * @param documentsResolver document manager instance
+ * @param storageEngine storage engine used to store documents
+ * @param secureArea secure area used to store documents' keys
+ */
+class OpenId4VpCBORResponseGeneratorImpl(private val documentsResolver: DocumentsResolver,
+ private val storageEngine: StorageEngine,
+ private val secureArea: AndroidKeystoreSecureArea
+): ResponseGenerator() {
+
+ private var readerTrustStore: ReaderTrustStore? = null
+ private val openid4VpX509CertificateTrust = Openid4VpX509CertificateTrust(readerTrustStore)
+
+ /**
+ * Set a trust store so that reader authentication can be performed.
+ *
+ * If it is not provided, reader authentication will not be performed.
+ *
+ * @param readerTrustStore a trust store for reader authentication, e.g. DefaultReaderTrustStore
+ */
+ override fun setReaderTrustStore(readerTrustStore: ReaderTrustStore) = apply {
+ openid4VpX509CertificateTrust.setReaderTrustStore(readerTrustStore)
+ this.readerTrustStore = readerTrustStore
+ }
+
+ /**
+ * Set a trust store so that reader authentication can be performed.
+ *
+ * If it is not provided, reader authentication will not be performed.
+ *
+ * @param readerTrustStore a trust store for reader authentication, e.g. DefaultReaderTrustStore
+ */
+ fun readerTrustStore(readerTrustStore: ReaderTrustStore) = apply {
+ openid4VpX509CertificateTrust.setReaderTrustStore(readerTrustStore)
+ this.readerTrustStore = readerTrustStore
+ }
+
+ internal fun getOpenid4VpX509CertificateTrust() = openid4VpX509CertificateTrust
+
+
+ private val secureAreaRepository: SecureAreaRepository by lazy {
+ SecureAreaRepository().apply {
+ addImplementation(secureArea)
+ }
+ }
+
+ /** Parses a request and returns the requested document data
+ * @param request the received request
+ * @return [RequestedDocumentData]
+ */
+ override fun parseRequest(request: OpenId4VpRequest): RequestedDocumentData {
+ val inputDescriptor = request.presentationDefinition.inputDescriptors.first()
+ val fieldConstraints = inputDescriptor.constraints.fields()
+
+ // find doc type
+ val docType = fieldConstraints.find { fieldConstraint ->
+ fieldConstraint.paths.first().value == "$.mdoc.doctype"
+ }?.filter?.get("const").toString().replace("\"", "")
+
+ // find namespace
+ val namespace = fieldConstraints.find { fieldConstraint ->
+ fieldConstraint.paths.first().value == "$.mdoc.namespace"
+ }?.filter?.get("const").toString().replace("\"", "")
+
+ // find requested fields
+ val requestedFields =
+ fieldConstraints.filter { fieldConstraint ->
+ fieldConstraint.intentToRetain != null
+ }.map { fieldConstraint ->
+ fieldConstraint.paths.first().value.replace(
+ "$.mdoc.",
+ ""
+ ).replace("\"", "")
+ }
+
+ return parseRequest(
+ mapOf(docType to mapOf(namespace to requestedFields)),
+ openid4VpX509CertificateTrust.getReaderAuth()
+ )
+ }
+
+ /**
+ * Creates a response and returns a ResponseResult
+ *
+ * @param disclosedDocuments a [List] of [DisclosedDocument]
+ * @return a [ResponseResult]
+ */
+ override fun createResponse(
+ disclosedDocuments: DisclosedDocuments
+ ): ResponseResult {
+ try {
+ val deviceResponse = DeviceResponseGenerator(Constants.DEVICE_RESPONSE_STATUS_OK)
+ disclosedDocuments.documents.forEach { responseDocument ->
+ if (responseDocument.docType == "org.iso.18013.5.1.mDL" && responseDocument.selectedDocItems.filter { docItem ->
+ docItem.elementIdentifier.startsWith("age_over_")
+ && docItem.namespace == "org.iso.18013.5.1"
+ }.size > 2) {
+ return ResponseResult.Failure(Exception("Device Response is not allowed to have more than to age_over_NN elements"))
+ }
+ val addResult =
+ addDocumentToResponse(deviceResponse, responseDocument, byteArrayOf(0))
+ if (addResult is AddDocumentToResponse.UserAuthRequired)
+ return ResponseResult.UserAuthRequired(
+ addResult.keyUnlockData.getCryptoObjectForSigning(SecureArea.ALGORITHM_ES256)
+ )
+ }
+ return ResponseResult.Success(OpenId4VpCBORResponse(deviceResponse.generate()))
+ } catch (e: Exception) {
+ return ResponseResult.Failure(e)
+ }
+ }
+
+ @Throws(IllegalStateException::class)
+ private fun addDocumentToResponse(
+ responseGenerator: DeviceResponseGenerator,
+ disclosedDocument: DisclosedDocument,
+ transcript: ByteArray
+ ): AddDocumentToResponse {
+ val dataElements = disclosedDocument.selectedDocItems.map {
+ CredentialRequest.DataElement(it.namespace, it.elementIdentifier, false)
+ }
+ val request = CredentialRequest(dataElements)
+ val credentialStore = CredentialStore(storageEngine, secureAreaRepository)
+ val credential =
+ requireNotNull(credentialStore.lookupCredential(disclosedDocument.documentId))
+ val authKey = credential.findAuthenticationKey(Timestamp.now())
+ ?: throw IllegalStateException("No auth key available")
+ val staticAuthData = StaticAuthDataParser(authKey.issuerProvidedData).parse()
+ val mergedIssuerNamespaces = MdocUtil.mergeIssuerNamesSpaces(
+ request, credential.nameSpacedData, staticAuthData
+ )
+ val keyUnlockData = AndroidKeystoreSecureArea.KeyUnlockData(authKey.alias)
+ try {
+ val generator =
+ DocumentGenerator(disclosedDocument.docType, staticAuthData.issuerAuth, transcript)
+ .setIssuerNamespaces(mergedIssuerNamespaces)
+ generator.setDeviceNamespacesSignature(
+ NameSpacedData.Builder().build(),
+ authKey.secureArea,
+ authKey.alias,
+ keyUnlockData,
+ SecureArea.ALGORITHM_ES256
+ )
+ val data = generator.generate()
+ responseGenerator.addDocument(data)
+ } catch (lockedException: SecureArea.KeyLockedException) {
+ Log.e(TAG, "error", lockedException)
+ return AddDocumentToResponse.UserAuthRequired(keyUnlockData)
+ }
+ return AddDocumentToResponse.Success
+ }
+
+ private fun parseRequest(
+ requestedFields: Map>>,
+ readerAuth: ReaderAuth?
+ ): RequestedDocumentData {
+ val requestedDocuments = mutableListOf()
+ requestedFields.forEach { document ->
+ // create doc item
+ val docItems = mutableListOf()
+ document.value.forEach { (namespace, elementIds) ->
+ elementIds.forEach { elementId ->
+ docItems.add(DocItem(namespace, elementId))
+ }
+ }
+ val docType = document.key
+
+ requestedDocuments.addAll(
+ documentsResolver.resolveDocuments(
+ DocRequest(
+ docType,
+ docItems,
+ readerAuth
+ )
+ )
+ )
+ }
+ return RequestedDocumentData(requestedDocuments)
+ }
+
+ class Builder(context: Context) {
+ private val _context = context.applicationContext
+ var documentsResolver: DocumentsResolver? = null
+ var readerTrustStore: ReaderTrustStore? = null
+
+ /**
+ * Reader trust store that will be used to validate the certificate chain of the mdoc verifier
+ *
+ * @param readerTrustStore
+ */
+ fun readerTrustStore(readerTrustStore: ReaderTrustStore) =
+ apply { this.readerTrustStore = readerTrustStore }
+
+ fun build(): OpenId4VpCBORResponseGeneratorImpl {
+ return documentsResolver?.let { documentsResolver ->
+ OpenId4VpCBORResponseGeneratorImpl(
+ documentsResolver,
+ storageEngine,
+ androidSecureArea
+ ).apply {
+ readerTrustStore?.let { setReaderTrustStore(it) }
+ }
+ } ?: throw IllegalArgumentException("documentResolver not set")
+ }
+
+ private val storageEngine: StorageEngine
+ get() = AndroidStorageEngine.Builder(_context, _context.noBackupFilesDir)
+ .setUseEncryption(true)
+ .build()
+ private val androidSecureArea: AndroidKeystoreSecureArea
+ get() = AndroidKeystoreSecureArea(_context, storageEngine)
+ }
+
+ private sealed interface AddDocumentToResponse {
+ object Success : AddDocumentToResponse
+ data class UserAuthRequired(val keyUnlockData: AndroidKeystoreSecureArea.KeyUnlockData) :
+ AddDocumentToResponse
+ }
+}
\ No newline at end of file
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpConfig.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpConfig.kt
index c83d068b..780a89fb 100644
--- a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpConfig.kt
+++ b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpConfig.kt
@@ -46,6 +46,7 @@ import eu.europa.ec.eudi.wallet.document.issue.openid4vci.OpenId4VciConfig
* @property clientIdSchemes list of [ClientIdScheme] that defines the supported Client Identifier schemes
* @property encryptionAlgorithms list of [EncryptionAlgorithm] that defines the supported encryption algorithms
* @property encryptionMethods list of [EncryptionMethod] that defines the supported encryption methods
+ * @property scheme optionally you can change the scheme. By default, the scheme "mdoc-openid4vp" is used
*/
class OpenId4VpConfig private constructor(private val builder: Builder) {
@@ -59,12 +60,16 @@ class OpenId4VpConfig private constructor(private val builder: Builder) {
val encryptionMethods: List
get() = builder.encryptionMethods
+ val scheme: String
+ get() = builder.scheme
+
/**
* Builder for [OpenId4VciConfig].
*
* @property clientIdSchemes list of [ClientIdScheme] that defines the supported Client Identifier schemes
* @property encryptionAlgorithms list of [EncryptionAlgorithm] that defines the supported encryption algorithms
* @property encryptionMethods list of [EncryptionMethod] that defines the supported encryption methods
+ * @property scheme for OpenId4Vp. Optionally, you can change the scheme. By default, "mdoc-openid4vp" is used.
*/
class Builder {
lateinit var clientIdSchemes: List
@@ -97,6 +102,19 @@ class OpenId4VpConfig private constructor(private val builder: Builder) {
*/
fun withEncryptionMethods(encryptionMethods: List) = apply { this.encryptionMethods = encryptionMethods }
+ var scheme: String = "mdoc-openid4vp"
+ private set
+
+ /**
+ * Sets the scheme for openId4Vp.
+ * By default, the scheme "mdoc-openid4vp" is supported
+ *
+ * @param scheme the scheme
+ */
+ fun withScheme(scheme: String) = apply {
+ this.scheme = scheme
+ }
+
fun build(): OpenId4VpConfig {
require(this::clientIdSchemes.isInitialized && clientIdSchemes.isNotEmpty()) { "OpenId4VpConfig: clientIdSchemes must be initialized with a not empty list" }
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpRequest.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpRequest.kt
new file mode 100644
index 00000000..5f28cc26
--- /dev/null
+++ b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpRequest.kt
@@ -0,0 +1,21 @@
+/*
+ * Copyright (c) 2023 European Commission
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package eu.europa.ec.eudi.wallet.transfer.openid4vp
+
+import eu.europa.ec.eudi.iso18013.transfer.response.Request
+import eu.europa.ec.eudi.prex.PresentationDefinition
+
+class OpenId4VpRequest(val presentationDefinition: PresentationDefinition): Request
\ No newline at end of file
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpResponse.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpResponse.kt
new file mode 100644
index 00000000..4f821392
--- /dev/null
+++ b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4VpResponse.kt
@@ -0,0 +1,21 @@
+/*
+ * Copyright (c) 2023 European Commission
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package eu.europa.ec.eudi.wallet.transfer.openid4vp
+
+import eu.europa.ec.eudi.iso18013.transfer.response.Response
+
+typealias DeviceResponseBytes = ByteArray
+class OpenId4VpCBORResponse(val deviceResponseBytes: DeviceResponseBytes): Response
\ No newline at end of file
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4vpManager.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4vpManager.kt
index bbfb9bb7..e813de61 100644
--- a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4vpManager.kt
+++ b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/transfer/openid4vp/OpenId4vpManager.kt
@@ -21,9 +21,8 @@ import android.util.Log
import com.nimbusds.jose.EncryptionMethod
import com.nimbusds.jose.JWEAlgorithm
import com.nimbusds.jose.JWSAlgorithm
-import eu.europa.ec.eudi.iso18013.transfer.Request
+import eu.europa.ec.eudi.iso18013.transfer.RequestedDocumentData
import eu.europa.ec.eudi.iso18013.transfer.TransferEvent
-import eu.europa.ec.eudi.iso18013.transfer.readerauth.ReaderTrustStore
import eu.europa.ec.eudi.openid4vp.Consensus
import eu.europa.ec.eudi.openid4vp.DispatchOutcome
import eu.europa.ec.eudi.openid4vp.JarmConfiguration
@@ -40,9 +39,6 @@ import eu.europa.ec.eudi.prex.DescriptorMap
import eu.europa.ec.eudi.prex.Id
import eu.europa.ec.eudi.prex.JsonPath
import eu.europa.ec.eudi.prex.PresentationSubmission
-import eu.europa.ec.eudi.wallet.document.DocumentManager
-import eu.europa.ec.eudi.wallet.internal.OpenId4VpUtil
-import eu.europa.ec.eudi.wallet.internal.Openid4VpX509CertificateTrust
import eu.europa.ec.eudi.wallet.internal.mainExecutor
import eu.europa.ec.eudi.wallet.util.CBOR
import kotlinx.coroutines.CoroutineScope
@@ -61,6 +57,23 @@ import java.util.concurrent.Executor
*
* Example:
* ```
+ * val certificates = listOf(
+ * // put trusted reader certificates here
+ * )
+ * val readerTrustStore = ReaderTrustStore.getDefault(
+ * listOf(context.applicationContext.getCertificate(certificates))
+ * )
+ *
+ * val documentedResolver = DocumentResolver { docRequest: DocRequest ->
+ * // put your code here to resolve the document
+ * // usually document resolution is done based on `docRequest.docType`
+ * }
+ *
+ * val openid4VpCBORResponseGenerator = OpenId4VpCBORResponseGeneratorImpl.Builder(context)
+ * .readerTrustStore(readerTrustStore)
+ * .documentsResolver(documentedResolver)
+ * .build()
+ *
* val openId4vpManager = OpenId4vpManager(
* context,
* OpenId4VpConfig.Builder()
@@ -78,7 +91,7 @@ import java.util.concurrent.Executor
* .withEncryptionAlgorithms(listOf(EncryptionAlgorithm.ECDH_ES))
* .withEncryptionMethods(listOf(EncryptionMethod.A128CBC_HS256))
* .build(),
- * documentManager
+ * openid4VpCBORResponseGenerator
* )
* val transferEventListener = TransferEvent.Listener { event ->
* when (event) {
@@ -93,17 +106,20 @@ import java.util.concurrent.Executor
* val request = openId4vpManager.resolveRequestUri(event.request)
* // handle request and demand from user the documents to be disclosed
* val disclosedDocuments = listOf()
- * val response = EudiWallet.createResponse(disclosedDocuments)
- * openId4vpManager.sendResponse(response)
+ * val response = openid4VpCBORResponseGenerator.createResponse(disclosedDocuments)
+ * openId4vpManager.sendResponse(response.deviceResponseBytes)
* }
* }
* }
* openId4vpManager.addTransferEventListener(transferEventListener)
*
+ * // resolve a request URI
+ * openId4vpManager.resolveRequestUri(requestURI)
+ *
* ```
* @param context the application context
* @param openId4VpConfig the configuration for OpenId4Vp
- * @param documentManager the document manager used for issuing documents
+ * @param responseGenerator that parses the request and creates the response
*/
private const val TAG = "OpenId4vpManager"
@@ -111,7 +127,7 @@ private const val TAG = "OpenId4vpManager"
class OpenId4vpManager(
context: Context,
openId4VpConfig: OpenId4VpConfig,
- private val documentManager: DocumentManager
+ val responseGenerator: OpenId4VpCBORResponseGeneratorImpl
) : TransferEvent.Listenable {
private val appContext = context.applicationContext
@@ -126,19 +142,9 @@ class OpenId4vpManager(
}
}
- private var readerTrustStore: ReaderTrustStore? = null
private var resolvedRequestObject: ResolvedRequestObject? = null
- private val openid4VpX509CertificateTrust = Openid4VpX509CertificateTrust(readerTrustStore)
private val siopOpenId4Vp = SiopOpenId4Vp(createSiopOpenId4VpConfig(openId4VpConfig))
- /**
- * Set a ReaderTrustStore (optionally)
- */
- fun setReaderTrustStore(readerTrustStore: ReaderTrustStore) = apply {
- this.readerTrustStore = readerTrustStore
- this.openid4VpX509CertificateTrust.setReaderTrustStore(readerTrustStore)
- }
-
/**
* Setting the `executor` is optional and defines the executor that will be used to
* execute the callback. If the `executor` is not defined, the callback will be executed on the
@@ -172,10 +178,10 @@ class OpenId4vpManager(
)
is ClientIdScheme.X509SanDns ->
- SupportedClientIdScheme.X509SanDns(openid4VpX509CertificateTrust)
+ SupportedClientIdScheme.X509SanDns(responseGenerator.getOpenid4VpX509CertificateTrust())
is ClientIdScheme.X509SanUri ->
- SupportedClientIdScheme.X509SanUri(openid4VpX509CertificateTrust)
+ SupportedClientIdScheme.X509SanUri(responseGenerator.getOpenid4VpX509CertificateTrust())
}
}
)
@@ -210,7 +216,8 @@ class OpenId4vpManager(
Log.d(TAG, "OpenId4VPAuthorization Request received")
onResultUnderExecutor(
TransferEvent.RequestReceived(
- requestObject.asRequest()
+ requestObject.asRequest(),
+ OpenId4VpRequest(requestObject.presentationDefinition)
)
)
}
@@ -319,7 +326,6 @@ class OpenId4vpManager(
fun close() {
Log.d(TAG, "close")
resolvedRequestObject = null
- removeAllTransferEventListeners()
}
private fun List.onTransferEvent(event: TransferEvent) {
@@ -330,10 +336,8 @@ class OpenId4vpManager(
return TransferEvent.Error(Throwable(this))
}
- private fun ResolvedRequestObject.OpenId4VPAuthorization.asRequest(): Request {
- return OpenId4VpUtil.parsePresentationDefinition(
- documentManager, presentationDefinition, openid4VpX509CertificateTrust.getReaderAuth()
- )
+ private fun ResolvedRequestObject.OpenId4VPAuthorization.asRequest(): RequestedDocumentData {
+ return responseGenerator.parseRequest(OpenId4VpRequest(presentationDefinition))
}
override fun addTransferEventListener(listener: TransferEvent.Listener): OpenId4vpManager =
diff --git a/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/util/DefaultNfcEngagementService.kt b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/util/DefaultNfcEngagementService.kt
new file mode 100644
index 00000000..674d7c06
--- /dev/null
+++ b/wallet-core/src/main/java/eu/europa/ec/eudi/wallet/util/DefaultNfcEngagementService.kt
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2023 European Commission
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package eu.europa.ec.eudi.wallet.util
+
+import eu.europa.ec.eudi.iso18013.transfer.TransferManager
+import eu.europa.ec.eudi.iso18013.transfer.engagement.NfcEngagementService
+import eu.europa.ec.eudi.wallet.EudiWallet
+
+/**
+ * NFC Engagement Service
+ *
+ * Add the service to your application's manifest file to enable nfc engagement functionality, as in the following example:
+ *
+ * ```xml
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ *
+ * ```
+ */
+
+class DefaultNfcEngagementService : NfcEngagementService() {
+ override val transferManager: TransferManager
+ get() = EudiWallet.transferManager
+}
\ No newline at end of file