首页 > 解决方案 > 为什么与HMS DeviceVirtualization引擎集成后,设备列表不会显示在App GUI中?

问题描述

我在这里按照 HMS 开发者指南进行设备虚拟化(DV)引擎开发 - https://developer.huawei.com/consumer/en/doc/development/connectivity-Guides/devicevirtualization-preparation,我将 DV SDK 集成到我的应用程序中,编译并建立一切正常。但是在将我的 DV 应用程序部署到我的手机后,硬件设备列表不会显示在应用程序 GUI 中。这可能是什么原因?

标签: virtualizationhuawei-developershuawei-mobile-services

解决方案


1.请检查设备兼容性:

目前DeviceVirtualization Engine只支持华为手机。当应用程序在不支持的运行环境中调用DV Engine中的API时,或者在运行不支持EMUI版本的华为手机上,系统会抛出NoClassDefFoundError。因此,应用程序应检查运行环境和 DV 引擎版本之间的兼容性。有关详细信息,请参阅文档

2、检查回调方法connect是否调用成功:

如果是这样,那么您的配置是正确的;
如果没有,请检查您是否有访问相关API的权限。出于安全考虑,您需要向华为申请许可才能使用DeviceVirtualization Engine的开放API。正如@Zinna所说,申请API 权限需要您在AppGallery Connect 上创建应用后生成的应用ID,并且已配置指纹。权限申请请发邮件至devConnect@huawei.com,主题为“DeviceVirtualization Engine权限申请”。有关详细信息,请参阅文档

3. 首次启动应用需要网络连接。

检查回调方法startDiscovery是否调用成功。如果是这样,并且设备参数不为空,则可以通过线程向UI线程发送数据。详情请参考官网提供的demo


推荐阅读