Clarify EditableInputConnection has a public alternative
This is a preparation to remove @UnsupportedAppUsage from the constructor of a hidden class EditableInputConnection. In most of cases, app developers should be using android.view.inputmethod.InputConnectionWrapper to intercept InputConnection API calls before they are delivered to EditText as follows. final EditText editText = new EditText(activity) { @Override public InputConnection onCreateInputConnection( EditorInfo editorInfo) { return new InputConnectionWrapper( super.onCreateInputConnection(editorInfo), false) { /** * {@inheritDoc} */ @Override public boolean commitText( CharSequence text, int newCursorPosition) { // do something return super.commitText(text, newCursorPosition); } }; } }; You can also re-implement BaseInputConnection without hidden APIs since Android 9. See CLs that are associated with Bug 24688781 for details. This CL makes this fact clear for app developers by using "publicAlternatives" field in @UnsupportedAppUsage. Bug: 192969370 Test: presubmit Change-Id: I0c879645a84fde14dd6444bb4735f543457e43a8
Loading
Please register or sign in to comment