js通过ace接口调用led驱动,HdfIoServiceBind绑定服务失败
参考这篇文章https://ost.51cto.com/posts/10369进行js调用led驱动,ace通过HdfIoServiceBind绑定服务失败,单独写一个测试程序却能成功,openharmony小型系统LTS3.0.2,开发板是hi3516dv300-ipcamera_hispark_taurus。
报错代码段以及日志如下:
ace绑定服务失败,代码段以及日志如下:
JSIValue AppModule::ToggleLed(const JSIValue thisVal, const JSIValue *args, uint8_t argsNum)
{
    HILOG_INFO(HILOG_MODULE_ACE, "Ace ToggleLed%s\n", LED_SERVICE);
    struct HdfIoService *serv = HdfIoServiceBind(LED_SERVICE);
    if (serv == NULL) {
        HILOG_ERROR(HILOG_MODULE_ACE, "fail to get service2 %s\n", LED_SERVICE);
        return JSI::CreateUndefined();
    }
    HdfIoServiceRecycle(serv);
    return JSI::CreateUndefined();
}
#下面是日志
#################################################################
OHOS # 
OHOS # 01-01 00:19:15.459 18 16 I 03900/ACE: Ace ToggleLedhdf_led
01-01 00:19:15.459 18 16 E 02500/hdf_syscall_adapter: HdfIoServiceAdapterObtain: load dev_mgr driver failed
01-01 00:19:15.459 18 16 E 02500/HDF_LOG_TAG: failed to get dev_mgr service
01-01 00:19:15.459 18 16 E 02500/hdf_syscall_adapter: HdfIoServiceAdapterObtain: load hdf_led driver failed
01-01 00:19:15.459 18 16 E 03900/ACE: fail to get service2 hdf_led
OHOS # 
测试程序却可以成功绑定,代码段以及日志:
int main(int argc, char **argv)
{
  int i;
  printf("myled service %s!\r\n", LED_SERVICE);
  /* 获取服务 */
  struct HdfIoService *serv = HdfIoServiceBind(LED_SERVICE);
  if (serv == NULL)
  {
    printf("fail to get service %s!\r\n", LED_SERVICE);
    return HDF_FAILURE;
  }
  for (i = 0; i < argc; i++)
  {
    printf("\r\nArgument %d is %s.\r\n", i, argv[i]);
  }
  SendEvent(serv, atoi(argv[1]));
  HdfIoServiceRecycle(serv);
  printf("exit");
  return HDF_SUCCESS;
}
#下面是日志
#################################################################
OHOS # 
OHOS # ./my_led 0
myled service hdf_led!
Argument 0 is my_led.
Argument 1 is 0.
Get reply is: 0
exit
OHOS #
01-01 00:19:31.643 22 101 E 02500/led_driver: Led driver dispatch
OHOS # 
OHOS # 
        js
      
        ace接口
      
        驱动
      
        HdfIoServiceBind
      
        赞
        1
 收藏 0
 回答 2
 
        待解决
        
相关问题
 openHarmony js如何调用http/https接口 
5692浏览  • 0回复 待解决
HarmonyOS socket绑定端口失败 
1377浏览  • 1回复 待解决
服务卡片如何通过java端跳转到js端? 
4942浏览  • 1回复 待解决
HarmonyOS 虚拟机上通过C接口创建audiorender失败 
1246浏览  • 1回复 待解决
手机网络正常,调用connection.hasDefaultNet()接口失败 
1605浏览  • 1回复 待解决
麻烦问下OpenHarmony中JS框架如何调用系统SA服务? 
8095浏览  • 1回复 待解决
HarmonyOS C++代码调用gethostbyname_r接口返回失败 
1272浏览  • 1回复 待解决
手机网络正常,但是调用connection.hasDefaultNet()接口失败 
2778浏览  • 1回复 待解决
鸿蒙js开发UI界面之后如何调用java提供的接口? 
5093浏览  • 1回复 待解决
HarmonyOS Rotation Vector传感器数据如何通过js接口获取 
1327浏览  • 1回复 待解决
相机实现预览和拍照,开发者通过调用HarmonyOS相机服务提供的接口可以开发相机应用 
2785浏览  • 1回复 待解决
JS调用carera拍摄的照片怎么上传到服务器? 
3954浏览  • 1回复 待解决
鸿蒙调用接通电话与挂断电话接口失败 
2935浏览  • 0回复 待解决
HarmonyOS 通过push kit推送服务创建及更新实况窗失败 
1604浏览  • 1回复 待解决
Socket接口库可以绑定域名吗 
1550浏览  • 1回复 待解决
HarmonyOS AKI绑定失败,无法正常使用 
1395浏览  • 1回复 待解决
HarmonyOS编译运行 ArkTS与 JS混合项目,接口调用有无性能问题 
1804浏览  • 2回复 待解决
HDF层驱动和linux原生驱动 
5522浏览  • 1回复 待解决
Harmonyos js fetch请求失败 
10467浏览  • 2回复 待解决
开展元服务开发如何对接授权调用链路 、服务端接口调用规范以及取Client ID、Client Secret等信息 
2851浏览  • 1回复 待解决
Js 荣耀手机get请求失败 
6776浏览  • 1回复 待解决
求js 中 class类名动态绑定的问题? 
7757浏览  • 1回复 待解决
HSP调用getRawFileContent失败。 
1787浏览  • 1回复 待解决
如何实现应用层调用自定义的底层驱动 
8224浏览  • 2回复 待解决
HarmonyOS 相机调用失败 
1436浏览  • 1回复 待解决





















楼主可以参考开源代码进行二次开发:https://gitee.com/organizations/openharmony/projects
已经解决了,是权限检测函数VfsPermissionCheck没通过,临时解决方法是强制让这个函数返回成功