草庐IT

Android O HIDL 不可用

coder 2023-12-04 原文

我对 Android O HIDL 有疑问。失败日志显示找不到该服务。

但是我可以通过 adb shell ps -A | 看到它grep 指纹

system       18758     1   17408   3276 pipe_wait  7c79e93e08 R android.hardware.biometrics.fingerprint@2.1-service`

谁能告诉我如何解决这个问题?我检查了 https://source.android.com/devices/architecture/hidl/但无法得到解决方案。

错误日志:

08-21 06:00:35.864  1890  2264 V FingerprintService: mDeamon was null, reconnect to fingerprint
08-21 06:00:35.864  1890  2264 I system_server: Looking for service android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default
08-21 06:00:35.864  2240  2240 D wpa_supplicant: nl80211: Set mode ifindex 24 iftype 2 (STATION)
08-21 06:00:35.866   566   566 W /system/bin/hwservicemanager: getTransportFromManifest: Cannot find entry android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint in either framework or device manifest, using default transport.
08-21 06:00:35.866  1890  2264 E system_server: service android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint declares transport method EMPTY but framework expects hwbinder.
08-21 06:00:35.867  1890  2264 E FingerprintService: Failed to get biometric interface
08-21 06:00:35.867  1890  2264 E FingerprintService: android.os.RemoteException: HwBinder Error: (-2147483648)
08-21 06:00:35.867  1890  2264 E FingerprintService:    at android.os.HwBinder.getService(Native Method)
08-21 06:00:35.867  1890  2264 E FingerprintService:    at android.hardware.biometrics.fingerprint.V2_1.IBiometricsFingerprint.getService(IBiometricsFingerprint.java:44)
08-21 06:00:35.867  1890  2264 E FingerprintService:    at com.android.server.fingerprint.FingerprintService.getFingerprintDaemon(FingerprintService.java:239)
08-21 06:00:35.867  1890  2264 E FingerprintService:    at com.android.server.fingerprint.FingerprintService$FingerprintServiceWrapper.isHardwareDetected(FingerprintService.java:1198)
08-21 06:00:35.867  1890  2264 E FingerprintService:    at android.hardware.fingerprint.IFingerprintService$Stub.onTransact(IFingerprintService.java:156)
08-21 06:00:35.867  1890  2264 E FingerprintService:    at android.os.Binder.execTransact(Binder.java:674)
08-21 06:00:35.867  1890  2264 W FingerprintService: fingerprint HIDL not available

最佳答案

我已经成功地在 HiKey 上执行的 Android 8.1 上运行我的指纹 HAL 修改后的96板文件如下。

首先,有必要添加 HIDL 配置以将设备声明为供应商,否则 VTS 会失败。

About HIDL configures
device/linaro/hikey/manifest.xml
+<hal format="hidl">
    <name>android.hardware.biometrics.fingerprint</name>
    <transport>hwbinder</transport>
    <version>2.1</version>
    <interface>
        <name>IBiometricsFingerprint</name>
        <instance>default</instance>
    </interface>
</hal>

其次,finger服务将在您在下面的文件中定义后启动。

device/linaro/hikey/device-common.mk
+#init finger service and copy
 android.hardware.biometrics.fingerprint@2.1-service.rc to 
 system/vendor/etc/init
+PRODUCT_PACKAGES += \
    +android.hardware.biometrics.fingerprint@2.1-service
    +# copy permission file of finger service
+PRODUCT_COPY_FILES += \
    +frameworks/native/data/etc/android.hardware.fingerprint.xml:system/etc
    /permissions/android.hardware.fingerprint.xml

最后在Android系统中使用“adb shell”、“ps | grep finger”等终端命令检查finger服务是否已经启动并运行。

欢迎提出任何建议。

关于Android O HIDL 不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45813528/

有关Android O HIDL 不可用的更多相关文章

  1. ruby - 使用 Ruby CSV 创建 Rails 记录,其中字符串字段不可查询 - 2

    我正在尝试将种子数据从CSV文件加载到我的Rails应用程序中。我最初安装了fastercsvgem,却发现从ruby​​1.9开始,fastercsv已被弃用,取而代之的是CSV库。所以在收到一个非常有用的错误告诉我切换后,我切换到CSV。然而,现在我遇到了最奇怪的现象,当我加载数据时一切看起来都很正常,但我似乎无法查询字符串字段。字符串字段由看似正确的字符串填充,但我无法访问它们。我可以查询任何数字字段,结果将返回,但不会返回字符串字段。我尝试使用引号的定界符,但无济于事。我什至从我的csv文件中删除了所有引号,但我仍然无法查询字符串字段。下面是我的代码,以及一些来自Rails控制

  2. ruby - IO::EAGAINWaitReadable:资源暂时不可用 - 读取会阻塞 - 2

    当我尝试使用“套接字”库中的方法“read_nonblock”时出现以下错误IO::EAGAINWaitReadable:Resourcetemporarilyunavailable-readwouldblock但是当我通过终端上的IRB尝试时它工作正常如何让它读取缓冲区? 最佳答案 IgetthefollowingerrorwhenItrytousethemethod"read_nonblock"fromthe"socket"library当缓冲区中的数据未准备好时,这是预期的行为。由于异常IO::EAGAINWaitReadab

  3. ruby-on-rails - capybara 错误:Selenium::WebDriver::Error::ElementNotVisibleError:元素不可见 - 2

    我正在使用TrixWYSIWYGeditor在我的应用程序中。对于我的capybara测试:我要填写编辑器。我找到了这篇文章:Howtotestbasecamp'stripeditor...这似乎很有希望。不幸的是,它一直给我这个错误:Selenium::WebDriver::Error::ElementNotVisibleError:elementnotvisible所以看起来Capybara发现元素没问题,但它只是没有与之交互,因为Capybara必须有一些默认设置才能不与隐藏/不可见元素交互。环顾四周后,我发现了这个Stackoverflow问题:Isitpossibletoin

  4. ruby-on-rails - 为什么 Array.count 在开发模式下可用但在生产模式下不可用? - 2

    对于最近的一个项目,我有几个View是这样的代码:这在开发模式下工作得很好......我将它推出到生产模式并且它爆炸了,说count不是Array的有效方法。我将每个实例都改为使用Array#length,它似​​乎可以正常工作。1)这种行为差异的原因是什么?2)我应该注意开发模式和生产模式之间的任何其他令人兴奋的差异吗?道德:确保您的生产托管环境使用与本地开发环境相同的Ruby版本。:)谢谢汤姆 最佳答案 count方法仅在Ruby1.9及更高版本中可用。我建议您使用与服务器相同版本的Ruby以避免此类问题-1.9中发生了很多变化

  5. ruby-on-rails - 将配置文件模型的某些属性设置为对其他用户公开(可见)或私有(private)(不可见)的最佳方法是什么? - 2

    我有一个Profile模型,它有很多属性,比如电子邮件、图像、年龄、地址等。最终用户可以将某些属性设为私有(private),以便其他用户无法查看。我通过向表private_attr添加一列并将其序列化以存储哈希来解决这个问题:-{email:true,address:true,age:false}这里的属性作为具有值true的键被认为是私有(private)的,不会向除这些属性所属的用户以外的用户显示。我想知道这是解决这个问题的最好方法,还是有其他方法。提前致谢。 最佳答案 我认为您可以只序列化用户希望在数组中私有(private

  6. ruby - 如何删除 ruby 中的不可打印/不可见字符? - 2

    有时我在字符串中间有邪恶的不可打印字符。这些字符串是用户输入的,所以我必须让我的程序很好地接收它,而不是试图改变问题的根源。例如,他们可以有zerowidthno-breakspace在字符串的中间。例如,在解析.po文件时,一个有问题的部分是文件中间的字符串"heisamanofgod"。虽然一切看起来都是正确的,但使用irb检查它会显示:"heisamanofgod".codepoints=>[104,101,32,105,115,32,97,32,65279,109,97,110,32,111,102,32,103,111,100]我相信我知道什么是BOM,而且我什至能很好地处理

  7. 解决台式机麦克风不可用问题,只有音频输出,无音频输入 - 2

    解决台式机麦克风不可用问题戴尔灵越3880最近因为需要开线上会议,发现戴尔台式机音频只有输出没有输入,也就是只能听见声音,无法输入声音。先后尝试了各种驱动安装更新之类的调试,无果。之后通过戴尔支持解决~这里多说一句,专业的就是专业,问题描述过去,直接给了解决方案,可能是他们遇到的相似问题比较多了,但也告诉我们,有些时候是可以通过这些官方服务解决问题的,比起自己折腾效率要高很多。那就记录一下吧~问题描述:电脑只能输出声音,不能输入声音。1、前提需要准备一只带麦克风的耳机,将耳机插入面板。2、先确定是否可以听到声音,可以通过播放歌曲或者视频。3、然后确认麦克风是否可用,可以通过调用win自带麦克风

  8. ruby - 修复不可读的 ghostscript 字体 - 2

    我正在使用rubyScruffygem来创建一些图表。它依赖于RMagick来渲染文本和创建png。当我运行我的ruby​​脚本时,出现此错误。sh:gs:commandnotfoundsh:gs:commandnotfound/Users/natebird/.rvm/gems/ree-1.8.7-2011.03/gems/scruffy-0.2.6/lib/scruffy/rasterizers/rmagick_rasterizer.rb:15:in`from_blob':unabletoreadfont`/usr/local/share/ghostscript/fonts/n019

  9. ruby - 硬件不可能? : "Create a rock paper scissors program in ruby WITHOUT using conditionals" - 2

    我正在上介绍性软件开发课,我的作业是创建一个带有两个参数的剪刀石头布程序(石头,纸)等,并返回获胜的arg。现在,如果我可以使用条件语句,我会快速解决这个问题,但作业说我们需要知道的一切都在前三个ruby教科书的章节,这些章节不包括条件!没有它们是否可以创建这个程序?或者他只是希望我们足智多谋并使用条件句?这是一个非常简单的条件分配......我在想我可能在这里遗漏了一些东西。编辑:我正在考虑那个chmod数字系统,并认为通过该加法系统可能有解决方案...... 最佳答案 这是一个只使用哈希的方法:RULES={:rock=>{:r

  10. ruby - 在 ruby​​/ActiveRecord 中生成类似 Instagram 或 Youtube 的不可猜测的字符串 ID - 2

    在创建给定ActiveRecord模型对象的实例后,我需要生成一个简短的(6-8个字符)唯一字符串用作URL中的标识符,采用Instagram照片URL的样式(如http://instagram.com/p/P541i4ErdL/,它我只是争先恐后地成为404)或Youtube的视频网址(如http://www.youtube.com/watch?v=oHg5SJYRHA0)。执行此操作的最佳方法是什么?最简单的是createarandomstring重复直到它是唯一的?有没有一种方法可以对整数ID进行散列/洗牌,使用户无法通过更改一个字符来破解URL(就像我对上面的404'sInst

随机推荐