Android InstantApp 无法打开相机

标签 android android-camera android-camera2 android-instant-apps

当我在 InstantApp 模式下启动我的 android 应用程序时,即使在授予相关相机权限后,它也无法打开相机。

我正在创建 Android Instant App,用户可以在其中捕获图像并上传到服务器。

我正在使用 Camera2 API。 InstantApp 不允许 MediaStore.ACTION_IMAGE_CAPTURE Intent ,因为 Android 不允许外部存储权限。

如果我以正常(非即时)模式启动,该应用程序能够在请求相关权限后打开相机。

但是当我在 InstantApp 模式下启动时,它无法打开相机。我在 logcat 中看到这些日志。

09-26 07:33:29.104 7846-7846/com.project.snapdrive I/CameraManagerGlobal: Connecting to camera service

09-26 07:33:29.174 7846-7846/com.project.snapdrive I/CameraManager: Using legacy camera HAL.

09-26 07:33:29.182 7846-7891/com.project.snapdrive W/Camera: An error occurred while connecting to camera 0: -74 (Not a data message)

如果您想查看代码,我的项目是 here .

我正在使用模拟器 Nexus 5X、Android 6.0、API 23。

最佳答案

这看起来像是一个可在 Android O 上重现的错误。它也可以通过改编成 Instant App 的示例 Camera2Basic 项目重现: Sample code

你能检查一下 bug on the Google tracker 的状态吗?用于更新此错误。

更新
=======
此问题已得到修复并已在 8.1 设备上推出。 我们正在与我们的合作伙伴合作,将修复推出到 8.0 设备的更新中。 我们预计这些更新将在未来几个月推出。

关于Android InstantApp 无法打开相机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46416995/

相关文章:

android - 在 pjsip android 中从前向后切换相机

java - 如何在 Android Camera Preview 中使用 OpenCV 方法

android相机图像压缩

android - 使用 setCameraDisabled (ComponentName admin, boolean disabled) 禁用相机

android - AsyncTask 中的 openCamera 返回 "IllegalArgumentException"

Android 4K 视频录制 - 一切正常但制作的视频文件始终为 1080p?

java - 从 Eclipse/Android 开发者工具导出 .apk 时出错

Android检测DRM音频内容

java - 无法从 Eclipse 中删除链接源

android - 如何在使用导航时关闭 Android 中的当前 fragment ?