- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试在添加/删除输入设备时收到通知,据我所知,这是 registerInputDeviceListener 应该做的......但我的监听器没有被调用!
这是我的代码 fragment :
InputManager im = (InputManager) getSystemService(Context.INPUT_SERVICE);
im.registerInputDeviceListener(new InputManager.InputDeviceListener() {
@Override
public void onInputDeviceAdded(int deviceId) {
Log.d("Input", "InputDeviceAdded: " + deviceId);
}
@Override
public void onInputDeviceRemoved(int deviceId) {
Log.d("Input", "InputDeviceRemoved: " + deviceId);
}
@Override
public void onInputDeviceChanged(int deviceId) {
Log.d("Input", "InputDeviceChanged: " + deviceId);
}
}, null);
这是我在拔下 USB 鼠标时在 logcat 中看到的内容:
01-15 19:19:04.025: INFO/EventHub(5935): Removing device '/dev/input/event0' due to inotify event
01-15 19:19:04.025: INFO/EventHub(5935): Removed device: path=/dev/input/event0 name=Primax USB OPTICAL MOUSE id=11 fd=245 classes=0x80000008
01-15 19:19:04.045: INFO/InputReader(5935): Device removed: id=11, name='Primax USB OPTICAL MOUSE', sources=0x00002002
但是我的监听器从来没有被调用过...
最佳答案
原来 InputManager 不会为设备更改注册自己,除非之前调用了 getInputDevice 或 getInputDeviceByDescriptor。
首先调用 getInputDevice(并忽略结果)会调用我的回调。
关于java - Android 的 InputManager::registerInputDeviceListener 没有调用我的监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14348103/
我已阅读 this .我无法编译 coredump 给出的答案。我可以清楚地看到 InputManager.java(Android 源代码)中的 injectInputEvent。它也是公开的。但是
我正在尝试在添加/删除输入设备时收到通知,据我所知,这是 registerInputDeviceListener 应该做的......但我的监听器没有被调用! 这是我的代码 fragment : In
我遇到了 android 软键盘的问题。有时键盘不会弹出,看起来 editText 没有获得焦点。 Cursor 已设置并闪烁,但 editText 的边框没有改变(焦点通常为蓝色或橙色)。 应用程序
我遇到了一个麻烦:突然,simpleInitApp() 中的 FlyCam 和 inputManager 都变成了 NULL。 我不明白发生了什么!它们总是 NULL! public void sim
我正在尝试开发一种服务,在服务与某些硬件/远程服务器交互时向系统注入(inject)触摸事件。我用谷歌搜索,每个人都建议使用 InputManager 类,引用 Monkey作为要遵循的示例项目。 但
我从各个地方收到相互矛盾的报告。 Engadget 的评论说 InputManager 插件被完全忽略(如果应用程序以 32 位模式加载会导致奇怪的行为),但是 this mailing list t
我是一名优秀的程序员,十分优秀!