最終更新:2014-12-18 (木) 14:40:52 (3409d)
Android/Input Device Configuration Files
http://source.android.com/devices/tech/input/input-device-configuration-files.html
http://source.android.com/devices/tech/input/touch-devices.html
概要
- Input device configuration files (.idc files) contain device-specific configuration properties that affect the behavior of input devices.
- Input device configuration files are typically not necessary for standard peripherals such as HID keyboards and mice since the default system behavior usually ensures that they will work out of the box. On the other hand, built-in embedded devices, particularly touch screens, almost always require input device configuration files to specify their behavior.
タッチデバイス
- All built-in touch devices should have input device configuration files.
Location
- Input device configuration files are located by USB vendor, product (and optionally version) id or by input device name.
- The following paths are consulted in order.(getInputDeviceConfigurationFilePathByDeviceIdentifier?)
- Android/system/usr/idc/Vendor_XXXX_Product_XXXX_Version_XXXX.idc
- Android/system/usr/idc/Vendor_XXXX_Product_XXXX.idc
- Android/system/usr/idc/DEVICE_NAME.idc
- Android/data/system/devices/idc?/Vendor_XXXX_Product_XXXX_Version_XXXX.idc
- Android/data/system/devices/idc?/Vendor_XXXX_Product_XXXX.idc
- Android/data/system/devices/idc?/DEVICE_NAME.idc
.idcの例 (Android-x86に含まれているGenericTouch.idc)
# Basic Parameters touch.deviceType = touchScreen #touch.orientationAware = 1 # Touch Size touch.touchSize.calibration = default # Tool Size touch.toolSize.calibration = default # Pressure touch.pressure.calibration = default # Size touch.size.calibration = default # Orientation touch.orientation.calibration = none device.internal = 1
touch
- touch.deviceType = touchScreen | touchPad | pointer | default
- touch.orientationAware = 0 | 1
- touch.gestureMode? = pointer | spots | default
- touch.size.calibration? = none | geometric | diameter | area | default
- touch.size.scale = <a non-negative floating point number>
- touch.size.bias? = <a non-negative floating point number>
- touch.size.isSummed? = 0 | 1
- touch.pressure.calibration? = none | physical | amplitude | default
- touch.pressure.scale? = <a non-negative floating point number>
- touch.orientation.calibration? = none | interpolated | vector | default
- touch.distance.calibration? = none | scaled | default
- touch.distance.scale? = <a non-negative floating point number>
device
関連コード
Android 4.0.4
Android 4.1~Android 4.3
Android 4.4, Android 5.0
EventHub
.idcの読み込み
void EventHub::loadConfigurationLocked(Device* device)