相关问题
 #鸿蒙通关秘籍#如何使用USB DDK创建设备描述符? 
1395浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中使用USB DDK发送控制读请求? 
1516浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中向指定的HID设备发送事件? 
954浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用Canvas创建模拟时钟? 
1495浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中使用openLink接口进行跳转? 
1552浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用Grid布局应对多设备适配? 
1388浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用@Builder简化对象创建? 
1217浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用axios获取接口数据? 
1606浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Rawfile接口进行文件操作? 
1417浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用Ark编程框架创建自定义组件? 
1287浏览  • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用ArkTS创建自定义组件? 
1700浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用startAbilityForResult接口拉起相机并获取拍摄图片地址? 
1221浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙系统中使用startAbilityByType11+接口拉起导航垂类应用? 
1031浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在ArkTS页面中使用占位组件挂载NDK接口组件? 
1707浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用FilePicker保存用户文件? 
1523浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙 NEXT 中使用 @Builder 装饰器进行创建自定义组件? 
1401浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用TaskPool处理同步任务? 
1427浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙长时任务中使用WantAgent? 
1186浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用NAPI接口实现JS与Native侧交互? 
1465浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用RenderNode创建和删除自定义节点? 
1131浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在Image组件中使用复制选项? 
1173浏览  • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中使用Button组件? 
1410浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中使用动态import高效加载模块? 
1500浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中使用GridRowSizeOption的尺寸属性? 
1180浏览  • 2回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中使用hilog进行日志输出? 
1567浏览  • 1回复 待解决





















首先需要在CMakeLists.txt文件中添加以下库支持HID的操作:
bash libhid.z.so
然后,包含必须的头文件:
c #include <hid/hid_ddk_api.h> #include <hid/hid_ddk_types.h>
接下来,使用以下代码创建设备并获取设备ID:
c std::vector<Hid_DeviceProp> deviceProp = {HID_PROP_DIRECT}; std::string deviceName = "keyboard"; Hid_Device hidDevice = { .deviceName = deviceName.c_str(), .vendorId = 0x6006, .productId = 0x6006, .version = 1, .bustype = 3, .properties = deviceProp.data(), .propLength = (uint16_t)deviceProp.size() }; std::vector<Hid_EventType> eventType = {HID_EV_ABS, HID_EV_KEY, HID_EV_SYN, HID_EV_MSC}; Hid_EventTypeArray eventTypeArray = {.hidEventType = eventType.data(), .length = (uint16_t)eventType.size()}; Hid_EventProperties hidEventProp = { .hidEventTypes = eventTypeArray, }; int32_t deviceId = OH_Hid_CreateDevice(&hidDevice, &hidEventProp);