作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在寻找一种方法来识别外部输入设备。
我注意到 [InputDevice] 类的 Android API 有一个名为 [isExternal] 的函数。但是当我尝试使用它时,它告诉我它无法解析方法。我检查了在线 API 引用,发现该函数不存在。所以我想知道为什么API中有这个函数,而在线引用中没有。
引用: https://developer.android.com/reference/android/view/InputDevice.html https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/view/InputDevice.java
最佳答案
isExternal 是一种隐藏方法,无法通过 SDK 访问。但是,您仍然可以使用 java 反射调用它。
public boolean isExternal(InputDevice inputDevice) {
try {
Method m = InputDevice.class.getMethod("isExternal");
return (Boolean) m.invoke(inputDevice);
} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
e.printStackTrace();
return false;
}
}
关于android - 如何判断输入设备是外接的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46538086/
假设我有一个音频 iPhone 应用程序,它从麦克风获取输入。 现在,虽然我自己还没有尝试过,但我相信用户可以使用插入 phonojack socket 的外部麦克风。 这意味着我的音频单元可能正在接
我是一名优秀的程序员,十分优秀!