输入系统_Reader线程_核心类及配置文件
在EventHub.cpp中EventHub类:(int 代表设备编号,Device*代表设备)
KeyedVector<int32_t, Device*> mDevices;
struct Device { Device* next; int fd; // may be -1 if device is virtual const int32_t id; const String8 path; const InputDeviceIdentifier identifier;
最后类对象:
包括一些设备的信息,名字,bus,厂商,版本号
这些信息是从驱动得来的。
以后会根据这些信息打开配置文件。有3种
1、IDC(input device conf)
2、keylayout(键盘布局)
3、KCM(键盘字符映射)
在内核里 KEY_1 代表的是 2
而在安卓里 AKEYCODE_1 代表的是8
那么在这个中间起到转化作用的就是.kl文件
然后安卓按照一定的顺序查找这些文件