当前位置: 首页 > 工具软件 > Codename One > 使用案例 >

Android studio设置相机权限,如何强制将“android.permission.CAMERA”权限添加到Codename中的清单中...

柏明亮
2023-12-01

我试图在Codename One中显示后置摄像头的实时预览.我使用原生界面(我首先针对的是Android).

为了让我的应用程序能够使用相机而不会弄乱构建提示,我在主窗体中添加了以下行:

if (Capture.hasCamera()){

Dialog.show("Appareil photo détecté", "Votre matériel est bien équipé d'un appareil photo!", "OK", null);

}

android.hardware.camera & android.permission.RECORD_AUDIO – are triggered by com.codename1.Capture

然而,在我使用Android Studio上的CN1在真实设备(API LEVEL 19 aka Kit Kat)上获得的源代码调试应用程序时,我总是遇到java.lang.RuntimeException:无法连接到相机服务.

过了一会儿,我意识到异常是由于manifest.xml中缺少以下权限:

< uses-permission android:name =“android.permission.CAMERA”android:required =“false”/>

请注意,如CN1博客中所述,行< uses-feature android:name =“android.hardware.camera”android:required =“false”/>已经被CN1添加了.

现在我已经添加了这一行,现场预览很好地展示了.

如果我真的将它添加到构建提示中,为什么不会在清单中自动添加此权限?

此外,我有另一个项目,使用相机拍照并将其保存在手机上,相机权限既未显示(在Android应用程序信息中),也未在应用程序安装期间请求,但它运行良好.请注意,例如Twitter应用程序在应用程序权限中显示“拍照和录制视频”,因此我的手机隐藏相机权限似乎不是问题.

编辑2016年11月20日:

Note: If you are using the camera by invoking an existing camera app, your application does not need to request this permission.

这就是CN1不需要此权限的原因!

感谢您帮助我通过CN1获得权限管理.

 类似资料: