import android.os.ServiceManager;
import android.hardware.input.IInputManager;
import android.view.InputDevice;  // 导入 InputDevice 类
import android.os.IBinder;

// 获取 IInputManager 接口
IBinder binder = ServiceManager.getService("input");
IInputManager inputManager = IInputManager.Stub.asInterface(binder);

// 获取设备ID
int[] deviceIds = inputManager.getInputDeviceIds();
int touchDeviceId = -1;

// 遍历输入设备并找到触摸设备
for (int id : deviceIds) {
    int sources = inputManager.getInputDevice(id).getSources(); // 获取输入设备源
    if ((sources & InputDevice.SOURCE_TOUCHSCREEN) == InputDevice.SOURCE_TOUCHSCREEN) {
        touchDeviceId = id;
    }
}

// 如果找到触摸设备,启用它
if (touchDeviceId != -1) {
    // 调用 IInputManager 的启用方法
    inputManager.enableInputDevice(touchDeviceId);  // 请替换为实际启用调用
    // 输出启用的设备 ID
    "启用触摸设备 ID: " + touchDeviceId;
}
 
 
Back to Top