TextClassification

public final class TextClassification
extends Object

java.lang.Object
   ↳ androidx.textclassifier.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 classes

class TextClassification.Builder

Builder for building TextClassification objects. 

class TextClassification.Request

A request object for generating TextClassification. 

Public methods

static TextClassification createFromBundle(Bundle bundle)

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

List<RemoteActionCompat> getActions()

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

float getConfidenceScore(String entity)

Returns the confidence score for the specified entity.

String getEntityType(int index)

Returns the entity type at the specified index.

int getEntityTypeCount()

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

Bundle getExtras()

Returns the extended, vendor specific data.

String getId()

Returns the id for this object.

CharSequence getText()

Gets the classified text.

Bundle toBundle()

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

String toString()

Inherited methods

Public methods

createFromBundle

public static TextClassification createFromBundle (Bundle bundle)

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

Parameters
bundle Bundle

Returns
TextClassification

Throws
IllegalArgumentException

getActions

public List<RemoteActionCompat> getActions ()

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.

Returns
List<RemoteActionCompat>

getConfidenceScore

public 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.

Parameters
entity String

Returns
float

Value is between 0.0 and 1.0 inclusive.

getEntityType

public String getEntityType (int index)

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

Parameters
index int

Returns
String

Throws
IndexOutOfBoundsException if the specified index is out of range.

getEntityTypeCount

public int getEntityTypeCount ()

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

Returns
int

getExtras

public 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.

Returns
Bundle

getId

public String getId ()

Returns the id for this object.

Returns
String

getText

public CharSequence getText ()

Gets the classified text.

Returns
CharSequence

toBundle

public Bundle toBundle ()

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

Returns
Bundle

toString

public String toString ()

Returns
String