AccessibilityService.SoftKeyboardController
public
static
final
class
AccessibilityService.SoftKeyboardController
extends Object
java.lang.Object | |
↳ | android.accessibilityservice.AccessibilityService.SoftKeyboardController |
Used to control, query, and listen for changes to the soft keyboard show mode.
Accessibility services may request to override the decisions normally made about whether or not the soft keyboard is shown.
If multiple services make conflicting requests, the last request is honored. A service may register a listener to find out if the mode has changed under it.
If the user takes action to override the behavior behavior requested by an accessibility
service, the user's request takes precendence, the show mode will be reset to
AccessibilityService#SHOW_MODE_AUTO
, and services will no longer be able to control
that aspect of the soft keyboard's behavior.
Note: Because soft keyboards are independent apps, the framework does not have total control over their behavior. They may choose to show themselves, or not, without regard to requests made here. So the framework will make a best effort to deliver the behavior requested, but cannot guarantee success.
See also:
Summary
Nested classes | |
---|---|
interface |
AccessibilityService.SoftKeyboardController.OnShowModeChangedListener
Listener for changes in the soft keyboard show mode. |
Constants | |
---|---|
int |
ENABLE_IME_FAIL_BY_ADMIN
Return value for |
int |
ENABLE_IME_FAIL_UNKNOWN
Return value for |
int |
ENABLE_IME_SUCCESS
Return value for |
Public methods | |
---|---|
void
|
addOnShowModeChangedListener(AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener, Handler handler)
Adds the specified change listener to the list of soft keyboard show mode change listeners. |
void
|
addOnShowModeChangedListener(AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener)
Adds the specified change listener to the list of show mode change listeners. |
int
|
getShowMode()
Returns the show mode of the soft keyboard. |
boolean
|
removeOnShowModeChangedListener(AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener)
Removes the specified change listener from the list of keyboard show mode change listeners. |
int
|
setInputMethodEnabled(String imeId, boolean enabled)
Enable or disable the specified IME for the user for whom the service is activated. |
boolean
|
setShowMode(int showMode)
Sets the soft keyboard show mode. |
boolean
|
switchToInputMethod(String imeId)
Switches the current IME for the user for whom the service is enabled. |
Inherited methods | |
---|---|
Constants
ENABLE_IME_FAIL_BY_ADMIN
public static final int ENABLE_IME_FAIL_BY_ADMIN
Return value for setInputMethodEnabled(java.lang.String, boolean)
. The action failed
because the InputMethod is not permitted by device policy manager.
Constant Value: 1 (0x00000001)
ENABLE_IME_FAIL_UNKNOWN
public static final int ENABLE_IME_FAIL_UNKNOWN
Return value for setInputMethodEnabled(java.lang.String, boolean)
. The action failed
and the reason is unknown.
Constant Value: 2 (0x00000002)
ENABLE_IME_SUCCESS
public static final int ENABLE_IME_SUCCESS
Return value for setInputMethodEnabled(java.lang.String, boolean)
. The action succeeded.
Constant Value: 0 (0x00000000)
Public methods
addOnShowModeChangedListener
public void addOnShowModeChangedListener (AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener, Handler handler)
Adds the specified change listener to the list of soft keyboard show mode change
listeners. The callback will occur on the specified Handler
's thread, or on the
services's main thread if the handler is null
.
Parameters | |
---|---|
listener |
AccessibilityService.SoftKeyboardController.OnShowModeChangedListener : the listener to add, must be non-null |
handler |
Handler : the handler on which to callback should execute, or null to
execute on the service's main thread |
addOnShowModeChangedListener
public void addOnShowModeChangedListener (AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener)
Adds the specified change listener to the list of show mode change listeners. The callback will occur on the service's main thread. Listener is not called on registration.
Parameters | |
---|---|
listener |
AccessibilityService.SoftKeyboardController.OnShowModeChangedListener : This value cannot be null . |
getShowMode
public int getShowMode ()
Returns the show mode of the soft keyboard.
Returns | |
---|---|
int |
the current soft keyboard show mode
Value is AccessibilityService.SHOW_MODE_AUTO , AccessibilityService.SHOW_MODE_HIDDEN , or AccessibilityService.SHOW_MODE_IGNORE_HARD_KEYBOARD |
removeOnShowModeChangedListener
public boolean removeOnShowModeChangedListener (AccessibilityService.SoftKeyboardController.OnShowModeChangedListener listener)
Removes the specified change listener from the list of keyboard show mode change listeners.
Parameters | |
---|---|
listener |
AccessibilityService.SoftKeyboardController.OnShowModeChangedListener : the listener to remove, must be non-null |
Returns | |
---|---|
boolean |
true if the listener was removed, false otherwise |
setInputMethodEnabled
public int setInputMethodEnabled (String imeId, boolean enabled)
Enable or disable the specified IME for the user for whom the service is activated. The IME needs to be in the same package as the service and needs to be allowed by device policy, if there is one. The change will persist until the specified IME is next explicitly enabled or disabled by whatever means, such as user choice, and may persist beyond the life cycle of the requesting service.
Parameters | |
---|---|
imeId |
String : The ID of the input method to enable or disable. This IME must be installed.
This value cannot be null . |
enabled |
boolean : true if the input method associated with imeId should be
enabled. |
Returns | |
---|---|
int |
status code for the result of enabling/disabling the input method associated
with imeId .
Value is ENABLE_IME_SUCCESS , ENABLE_IME_FAIL_BY_ADMIN , or ENABLE_IME_FAIL_UNKNOWN |
Throws | |
---|---|
SecurityException |
if the input method is not in the same package as the service. |
See also:
setShowMode
public boolean setShowMode (int showMode)
Sets the soft keyboard show mode.
Note: If the service is not yet connected (e.g.
AccessibilityService#onServiceConnected()
has not yet been called) or the
service has been disconnected, this method will have no effect and return false
.
Parameters | |
---|---|
showMode |
int : the new show mode for the soft keyboard
Value is AccessibilityService.SHOW_MODE_AUTO , AccessibilityService.SHOW_MODE_HIDDEN , or AccessibilityService.SHOW_MODE_IGNORE_HARD_KEYBOARD |
Returns | |
---|---|
boolean |
true on success |
switchToInputMethod
public boolean switchToInputMethod (String imeId)
Switches the current IME for the user for whom the service is enabled. The change will persist until the current IME is explicitly changed again, and may persist beyond the life cycle of the requesting service.
Parameters | |
---|---|
imeId |
String : The ID of the input method to make current. This IME must be installed and
enabled.
This value cannot be null . |
Returns | |
---|---|
boolean |
true if the current input method was successfully switched to the input
method by imeId ,
false if the input method specified is not installed, not enabled, or
otherwise not available to become the current IME |
See also:
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-04-04 UTC.