【问题标题】:Google Developers won't let me use android.hardware.Camera or camera2Google Developers 不允许我使用 android.hardware.Camera 或 camera2
【发布时间】:2016-12-06 08:07:23
【问题描述】:

我创建了一个相机应用并设置了几个 <uses-feature> ,其中一个是 android.hardware.Camera(已弃用)。我尝试发送我的 APK,但 Google 决定将“支持的设备”设置为 0。我尝试对 android.hardware.camera2 做同样的事情,但结果是一样的;没有支持的设备。

是什么原因造成的?

【问题讨论】:

    标签: android android-studio android-fragments google-play android-manifest


    【解决方案1】:

    你添加了:

    <uses-feature android:name="android.hardware.camera" />
    

    但你还需要:

    <uses-permission android:name="android.permission.CAMERA" />
    

    也许还有:

    <uses-feature android:name="android.hardware.camera.autofocus" />
    

    检查https://developer.android.com/guide/topics/media/camera.htmlhttps://developer.android.com/reference/android/hardware/Camera.html 了解所有要求

    【讨论】:

      【解决方案2】:

      请注意,Android API 包(如 android.hardware.camera2 包或类 android.hardware.Camera)和 Android 功能(如 FEATURE_CAMERA)之间没有自动映射。

      并且功能必须具有完全匹配的字符串 - 说您需要功能“android.hardware.Camera”与“android.hardware.camera”不同。后者是FEATURE_CAMERA的值,官方SDK中没有前者。如果您要求,您将不会匹配任何设备,因为没有设备列出该功能。

      同样,新的 camera2 API 没有单独的功能 - 如果设备有摄像头,它将在某种程度上支持 camera2。所以只需要 FEATURE_CAMERA 就足够了。如果您需要功能强大的相机设备,例如 FULL-level camera2 实现,那么您可能需要FEATURE_CAMERA_LEVEL_FULL

      但列出功能并不能让您使用它们 - 它所做的只是限制您的应用与哪些设备兼容。无论您是否列出 FEATURE_CAMERA,您都可以使用相机 API(尽管您需要许可,正如 Raymond de la Croix 指出的那样)。

      【讨论】:

        猜你喜欢
        • 2019-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多