Мое приложение иногда показывает уведомление, чтобы упростить переключение на внутренний метод ввода приложения.Поэтому я выполняю
((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE)).showInputMethodPicker();
, когда пользователь щелкает уведомление.
Пока это работает, но не всегда работает на Android 9: когда мое приложение находится на переднем плане, оноработает.Когда это не так, ничего не происходит.В logcat я вижу предупреждение
"Предупреждение 889 InputMethodManagerService Игнорирование showInputMethodPickerFromClient из идентификатора пользователя 10210: com.android.internal.view.IInputMethodClient$Stub$Proxy@edf46f0" * * 100
Есть ли способ заставить эту работу снова?
Обновление: я пытался создать действие, вызывая showInputMethodPicker();
в onResume()
.Это работает (если я использую postDelayed()
с относительно большой задержкой, что является неудачным), но я не могу заставить действие автоматически закрыться.Так что это не очень хороший способ.