【发布时间】:2020-03-28 04:30:30
【问题描述】:
我想模拟一个没有内置摄像头的 android 设备,但我找不到这样做的方法。 在创建新的模拟器(和硬件)时,我在 Android AVD 管理器中禁用了相机选项,但生成的模拟器仍然具有相机功能。我也尝试过使用 Genymotion 模拟器,但它似乎甚至没有禁用相机的选项。
原因:
我的清单android:name="android.hardware.camera" 中有这一行,它可以防止拥有没有摄像头的设备的用户安装我的应用程序(设备不兼容)。我想在其中添加android:required="false",但这意味着我还必须为用户从我的应用程序访问相机功能而他的设备上没有相机功能的情况实现一些代码,我需要对此进行测试。
欢迎提出任何建议。
【问题讨论】:
-
模拟器或虚拟设备是有根设备。因此,请检查已安装的设备是否已植根。如果它被植根假设设备没有相机并且不允许打开相机。 ` if (CommonUtils.isRooted(this) || RootShell.isRootAvailable())` 这行代码帮助查找安装的设备是否已root。
-
模拟器可能还有摄像头功能,但是如果前后都设置为“无”,则无法打开摄像头设备
标签: java android camera android-manifest emulation