public final class TextClassification


Information for generating a widget to handle classified text.

A TextClassification object contains icons, labels, and intents that may be used to build a widget that can be used to act on classified text.

e.g. building a menu that allows the user how to act on a piece of text:

  // Called preferably outside the UiThread.
  TextClassification classification = textClassifier.classifyText(allText, 10, 25);

  // Called on the UiThread.
  for (RemoteActionCompat action : classification.getActions()) {
      MenuItem item = menu.add(action.getTitle());
      item.setContentDescription(action.getContentDescription());
      item.setOnMenuItemClickListener(v -> action.getActionIntent().send());
      if (action.shouldShowIcon()) {
          item.setIcon(action.getIcon().loadDrawable(context));
      }
  }

Summary

Nested types

public final class TextClassification.Builder

Builder for building TextClassification objects.

public final class TextClassification.Request

This class is deprecated.

Use android.view.textclassifier.TextClassification.Request instead.

This class is deprecated.

Use android.view.textclassifier.TextClassification.Builder instead.

Public methods

static @NonNull TextClassification

Extracts a classification from a bundle that was added using toBundle.

@NonNull List<RemoteActionCompat>

Returns a list of actions that may be performed on the text.

@FloatRange(from = 0.0, to = 1.0) float

Returns the confidence score for the specified entity.

@NonNull String
getEntityType(int index)

Returns the entity type at the specified index.

@IntRange(from = 0) int

Returns the number of entity types found in the classified text.

@NonNull Bundle

Returns the extended, vendor specific data.

@Nullable String

Returns the id for this object.

@Nullable CharSequence

Gets the classified text.

@NonNull Bundle

Adds this classification to a Bundle that can be read back with the same parameters to createFromBundle.

String

Public methods

createFromBundle

public static @NonNull TextClassification createFromBundle(@NonNull Bundle bundle)

Extracts a classification from a bundle that was added using toBundle.

getActions

public @NonNull List<RemoteActionCompatgetActions()

Returns a list of actions that may be performed on the text. The list is ordered based on the likelihood that a user will use the action, with the most likely action appearing first.

getConfidenceScore

public @FloatRange(from = 0.0, to = 1.0) float getConfidenceScore(String entity)

Returns the confidence score for the specified entity. The value ranges from 0 (low confidence) to 1 (high confidence). 0 indicates that the entity was not found for the classified text.

getEntityType

public @NonNull String getEntityType(int index)

Returns the entity type at the specified index. Entities are ordered from high confidence to low confidence.

Throws
java.lang.IndexOutOfBoundsException

if the specified index is out of range.

See also
getEntityTypeCount

for the number of entities available.

getEntityTypeCount

public @IntRange(from = 0) int getEntityTypeCount()

Returns the number of entity types found in the classified text.

getExtras

public @NonNull Bundle getExtras()

Returns the extended, vendor specific data.

NOTE: Each call to this method returns a new bundle copy so clients should prefer to hold a reference to the returned bundle rather than frequently calling this method. Avoid updating the content of this bundle. On pre-O devices, the values in the Bundle are not deep copied.

getId

public @Nullable String getId()

Returns the id for this object.

getText

public @Nullable CharSequence getText()

Gets the classified text.

toBundle

public @NonNull Bundle toBundle()

Adds this classification to a Bundle that can be read back with the same parameters to createFromBundle.

toString

public String toString()