首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不调用USB DriverKit的启动方法

不调用USB DriverKit的启动方法
EN

Stack Overflow用户
提问于 2020-05-28 16:23:36
回答 1查看 383关注 0票数 1

我正在编写一个DriverKit右转,可以使用系统扩展框架激活它。我已经为usb设置了相应的权限,即com.apple.developer.driverkit设置为,真正的已经添加为字典,但是没有任何子值(它是空的)。

我原以为在插入任何USB设备后,会有人在dext的启动方法上呼叫我,但我没有看到任何电话。

知道没有任何步骤/配置吗?

EN

回答 1

Stack Overflow用户

发布于 2020-05-29 11:57:41

有一些重要的信息是你没有分享的:

  • 在您的计算机上是禁用的,还是在您的签名证书/供应配置文件中启用了必要的权限?
  • 为什么您的DriverKit权限为空?苹果通常会发布带有特定厂商ID或一组用户ID的USB权限。
  • 是您的灵巧激活(来自包装应用程序),您是否收到了崩溃报告?(请参见Console.app)
  • What,您的确切意思是“后任何 USB设备插入”(强调是我的)吗?您的IOKit匹配字典在Info.plist中是什么?您期望它与哪些设备匹配?
  • 是您的驱动程序的服务对象显示在I/O注册表中?(ioregioreg)

这些是常见的原因,但是不管如何诊断问题--您看过系统日志了吗?具体来说,sysextdkextd通常会在日志中抱怨,因为有一些关于dext的东西使得它无法加载。

试着做这样的事情:

卸载您的dext

  • Reboot

  • /Library/SystemExtensions
  • 不应该有任何残余的灵巧。(在任何以uuid命名的子目录中)如果有,请尝试运行sudo kextcache --invalidate /,等待它完成,然后重新启动。僵尸引导导致终端窗口中的主要problems.
  • Launch log stream --info --predicate 'process == "kextd" || process == "sysextd" || processID == 0' (如果您也要通过NSLog/os_log登录,可以将应用程序添加到谓词中)
  • 启动应用程序,安装右旋log stream --info --predicate 'process == "kextd" || process == "sysextd" || processID == 0'
  • 检查日志是否在设备
  • 中显示任何relevant
  • Plug,检查日志是否显示相关的H 241f 242

你应该在那里看到一些有用的信息。如果你不能理解你的问题,可以随时用你得到的日志更新你的问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62069647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档