# TextServicesManager

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Summary: [Methods](https://developer.android.com/reference/android/view/textservice/TextServicesManager#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/view/textservice/TextServicesManager#inhmethods)  

# TextServicesManager

*** ** * ** ***

[Kotlin](https://developer.android.com/reference/kotlin/android/view/textservice/TextServicesManager "View this page in Kotlin") \|Java


`
public

final

class
TextServicesManager
`


`

extends `[Object](https://developer.android.com/reference/java/lang/Object)`


`

`


`

|---|----------------------------------------------|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.view.textservice.TextServicesManager |

<br />

*** ** * ** ***

System API to the overall text services, which arbitrates interaction between applications
and text services.

The user can change the current text services in Settings. And also applications can specify
the target text services.

### Architecture Overview

There are three primary parties involved in the text services
framework (TSF) architecture:

- The **text services manager** as expressed by this class is the central point of the system that manages interaction between all other parts. It is expressed as the client-side API here which exists in each application context and communicates with a global system service that manages the interaction across all processes.
- A **text service** implements a particular interaction model allowing the client application to retrieve information of text. The system binds to the current text service that is in use, causing it to be created and run.
- Multiple **client applications** arbitrate with the text service manager for connections to text services.

### Text services sessions

- The **spell checker session** is one of the text services. [SpellCheckerSession](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession)

<br />

## Summary

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     ### Public methods                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     ||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` `[SpellCheckerInfo](https://developer.android.com/reference/android/view/textservice/SpellCheckerInfo)                                                                     | ` `[getCurrentSpellCheckerInfo](https://developer.android.com/reference/android/view/textservice/TextServicesManager#getCurrentSpellCheckerInfo())`() ` Retrieve the currently active spell checker, or null if there is none.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ` `[List](https://developer.android.com/reference/java/util/List)`<`[SpellCheckerInfo](https://developer.android.com/reference/android/view/textservice/SpellCheckerInfo)`>` | ` `[getEnabledSpellCheckerInfos](https://developer.android.com/reference/android/view/textservice/TextServicesManager#getEnabledSpellCheckerInfos())`() ` Retrieve the list of currently enabled spell checkers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ` boolean`                                                                                                                                                                   | ` `[isSpellCheckerEnabled](https://developer.android.com/reference/android/view/textservice/TextServicesManager#isSpellCheckerEnabled())`() ` Return whether the spell checker is enabled or not.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ` `[SpellCheckerSession](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession)                                                               | ` `[newSpellCheckerSession](https://developer.android.com/reference/android/view/textservice/TextServicesManager#newSpellCheckerSession(android.os.Bundle,%20java.util.Locale,%20android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener,%20boolean))`(`[Bundle](https://developer.android.com/reference/android/os/Bundle)` bundle, `[Locale](https://developer.android.com/reference/java/util/Locale)` locale, `[SpellCheckerSession.SpellCheckerSessionListener](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession.SpellCheckerSessionListener)` listener, boolean referToSpellCheckerLanguageSettings) ` Get a spell checker session from the spell checker.                                                                                                                        |
| ` `[SpellCheckerSession](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession)                                                               | ` `[newSpellCheckerSession](https://developer.android.com/reference/android/view/textservice/TextServicesManager#newSpellCheckerSession(android.view.textservice.SpellCheckerSession.SpellCheckerSessionParams,%20java.util.concurrent.Executor,%20android.view.textservice.SpellCheckerSession.SpellCheckerSessionListener))`(`[SpellCheckerSession.SpellCheckerSessionParams](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession.SpellCheckerSessionParams)` params, `[Executor](https://developer.android.com/reference/java/util/concurrent/Executor)` executor, `[SpellCheckerSession.SpellCheckerSessionListener](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession.SpellCheckerSessionListener)` listener) ` Get a spell checker session from the spell checker. |

| ### Inherited methods |
|-----------------------|---|
| From class ` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object)` ` |--------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object)          | ` `[clone](https://developer.android.com/reference/java/lang/Object#clone())`() ` Creates and returns a copy of this object.                                                                                                                                                        | | ` boolean`                                                                     | ` `[equals](https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object))`(`[Object](https://developer.android.com/reference/java/lang/Object)` obj) ` Indicates whether some other object is "equal to" this one.                                             | | ` void`                                                                        | ` `[finalize](https://developer.android.com/reference/java/lang/Object#finalize())`() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.                                                            | | ` final `[Class](https://developer.android.com/reference/java/lang/Class)`<?>` | ` `[getClass](https://developer.android.com/reference/java/lang/Object#getClass())`() ` Returns the runtime class of this `Object`.                                                                                                                                                 | | ` int`                                                                         | ` `[hashCode](https://developer.android.com/reference/java/lang/Object#hashCode())`() ` Returns a hash code value for the object.                                                                                                                                                   | | ` final void`                                                                  | ` `[notify](https://developer.android.com/reference/java/lang/Object#notify())`() ` Wakes up a single thread that is waiting on this object's monitor.                                                                                                                              | | ` final void`                                                                  | ` `[notifyAll](https://developer.android.com/reference/java/lang/Object#notifyAll())`() ` Wakes up all threads that are waiting on this object's monitor.                                                                                                                           | | ` `[String](https://developer.android.com/reference/java/lang/String)          | ` `[toString](https://developer.android.com/reference/java/lang/Object#toString())`() ` Returns a string representation of the object.                                                                                                                                              | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long,%20int))`(long timeoutMillis, int nanos) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait(long))`(long timeoutMillis) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.                   | | ` final void`                                                                  | ` `[wait](https://developer.android.com/reference/java/lang/Object#wait())`() ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*.                                                                                             | ||

## Public methods

### getCurrentSpellCheckerInfo

Added in [API level 31](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public SpellCheckerInfo getCurrentSpellCheckerInfo ()
```

Retrieve the currently active spell checker, or null if there is none.

<br />

|                                                                       Returns                                                                        ||
|-------------------------------------------------------------------------------------------------------|-----------------------------------------------|
| [SpellCheckerInfo](https://developer.android.com/reference/android/view/textservice/SpellCheckerInfo) | The current active spell checker info. <br /> |

### getEnabledSpellCheckerInfos

Added in [API level 31](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public List<SpellCheckerInfo> getEnabledSpellCheckerInfos ()
```

Retrieve the list of currently enabled spell checkers.

Note: The results are filtered by the rules of
[package visibility](https://developer.android.com/training/basics/intents/package-visibility), except for
the currently active spell checker.

<br />

|                                                                                                                           Returns                                                                                                                            ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------|
| [List](https://developer.android.com/reference/java/util/List)`<`[SpellCheckerInfo](https://developer.android.com/reference/android/view/textservice/SpellCheckerInfo)`>` | The list of currently enabled spell checkers. This value cannot be `null`. <br /> |

### isSpellCheckerEnabled

Added in [API level 31](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public boolean isSpellCheckerEnabled ()
```

Return whether the spell checker is enabled or not.

<br />

|                                 Returns                                  ||
|-----------|---------------------------------------------------------------|
| `boolean` | `true` if spell checker is enabled, `false` otherwise. <br /> |

### newSpellCheckerSession

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public SpellCheckerSession newSpellCheckerSession (Bundle bundle, 
                Locale locale, 
                SpellCheckerSession.SpellCheckerSessionListener listener, 
                boolean referToSpellCheckerLanguageSettings)
```

Get a spell checker session from the spell checker.

[SuggestionsInfo.RESULT_ATTR_IN_THE_DICTIONARY](https://developer.android.com/reference/android/view/textservice/SuggestionsInfo#RESULT_ATTR_IN_THE_DICTIONARY),
[SuggestionsInfo.RESULT_ATTR_LOOKS_LIKE_TYPO](https://developer.android.com/reference/android/view/textservice/SuggestionsInfo#RESULT_ATTR_LOOKS_LIKE_TYPO), and
[SuggestionsInfo.RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS](https://developer.android.com/reference/android/view/textservice/SuggestionsInfo#RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS) will be passed to the spell
checker as supported attributes.

<br />

|                                                                                                                                                                                                                                                                         Parameters                                                                                                                                                                                                                                                                          ||
|---------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `bundle`                              | `Bundle`: This value may be `null`. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `locale`                              | `Locale`: the locale for the spell checker. If `locale` is null and referToSpellCheckerLanguageSettings is true, the locale specified in Settings will be returned. If `locale` is not null and referToSpellCheckerLanguageSettings is true, the locale specified in Settings will be returned only when it is same as `locale`. Exceptionally, when referToSpellCheckerLanguageSettings is true and `locale` is only language (e.g. "en"), the specified locale in Settings (e.g. "en_US") will be selected. <br /> |
| `listener`                            | `SpellCheckerSession.SpellCheckerSessionListener`: a spell checker session lister for getting results from the spell checker. This value cannot be `null`. <br />                                                                                                                                                                                                                                                                                                                                                    |
| `referToSpellCheckerLanguageSettings` | `boolean`: if true, the session for one of enabled languages in settings will be returned. <br />                                                                                                                                                                                                                                                                                                                                                                                                                    |

|                                                                                          Returns                                                                                           ||
|-------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------|
| [SpellCheckerSession](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession) | a spell checker session of the spell checker This value may be `null`. <br /> |

### newSpellCheckerSession

Added in [API level 31](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  

```
public SpellCheckerSession newSpellCheckerSession (SpellCheckerSession.SpellCheckerSessionParams params, 
                Executor executor, 
                SpellCheckerSession.SpellCheckerSessionListener listener)
```

Get a spell checker session from the spell checker.

<br />

|                                                                                                                                                                                                                                                                                                                             Parameters                                                                                                                                                                                                                                                                                                                             ||
|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `params`   | `SpellCheckerSession.SpellCheckerSessionParams`: The parameters passed to the spell checker. This value cannot be `null`. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `executor` | `Executor`: The executor on which `listener` will be called back. This value cannot be `null`. Callback and listener events are dispatched through this [Executor](https://developer.android.com/reference/java/util/concurrent/Executor), providing an easy way to control which thread is used. To dispatch events through the main thread of your application, you can use [Context.getMainExecutor()](https://developer.android.com/reference/android/content/Context#getMainExecutor()). Otherwise, provide an [Executor](https://developer.android.com/reference/java/util/concurrent/Executor) that dispatches to an appropriate thread. <br /> |
| `listener` | `SpellCheckerSession.SpellCheckerSessionListener`: a spell checker session lister for getting results from the spell checker. This value cannot be `null`. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |

|                                                                                            Returns                                                                                            ||
|-------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------|
| [SpellCheckerSession](https://developer.android.com/reference/android/view/textservice/SpellCheckerSession) | The spell checker session of the spell checker. This value may be `null`. <br /> |