# AppFunctionAppMetadata

Artifact: [androidx.appfunctions:appfunctions](https://developer.android.com/jetpack/androidx/releases/appfunctions) [View Source](https://cs.android.com/search?q=file:androidx/appfunctions/metadata/AppFunctionAppMetadata.kt+class:androidx.appfunctions.metadata.AppFunctionAppMetadata) Added in [1.0.0-rc01](https://developer.android.com/jetpack/androidx/releases/appfunctions#1.0.0-rc01)

*** ** * ** ***


```
public final class AppFunctionAppMetadata
```

<br />

*** ** * ** ***

Metadata describing how an app exposes its functions for use by an AI agent or large language model (LLM).

This class corresponds to the androidx.appfunctions.R.styleable.AppFunctionAppMetadata styleable in the XML linked to property `android.app.appfunctions.app_metadata` in the app's manifest.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAppMetadata#AppFunctionAppMetadata(kotlin.String,kotlin.String)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html instructions, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html displayDescription )` |

| ### Public methods |
|---|---|
| `boolean` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAppMetadata#equals(kotlin.Any)(https://developer.android.com/reference/java/lang/Object.html other)` |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAppMetadata#getDisplayDescription()()` A short, user-visible description of what the app functions enable the agent to do. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAppMetadata#getInstructions()()` App-provided instructions for the LLM on how to use the app's functions together. |
| `int` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAppMetadata#hashCode()()` |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/appfunctions/metadata/AppFunctionAppMetadata#toString()()` |

## Public constructors

### AppFunctionAppMetadata

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

```
public AppFunctionAppMetadata(
    @NonNull String instructions,
    @NonNull String displayDescription
)
```

## Public methods

### equals

```
public boolean equals(Object other)
```

### getDisplayDescription

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

```
public final @NonNull String getDisplayDescription()
```

A short, user-visible description of what the app functions enable the agent to do.

Corresponds to the `displayDescription` attribute in the androidx.appfunctions.R.styleable.AppFunctionAppMetadata styleable. Defaults to empty string if not specified.

### getInstructions

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

```
public final @NonNull String getInstructions()
```

App-provided instructions for the LLM on how to use the app's functions together.

Agents should use these instructions as context when planning calls to the app's functions, for example to follow a required order across functions (such as searching for an entity before updating or deleting it) or to respect constraints that apply across functions. Instructions complement, and do not replace, the descriptions of individual functions.

Corresponds to the `instructions` attribute in the androidx.appfunctions.R.styleable.AppFunctionAppMetadata styleable. Defaults to empty string if not specified.

### hashCode

```
public int hashCode()
```

### toString

```
public @NonNull String toString()
```