我正在使用Android模拟器和开发平台。
我创建了一个新应用程序并想知道如何关闭或打开Android手机摄像头?
答案 0 :(得分:2)
如果您正在谈论从应用程序打开它,您应该使用相机Intent。
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra("android.intent.extras.CAMERA_FACING", 1);
startActivityForResult(intent, 1);
编辑:
1 - 适用于前置摄像头
答案 1 :(得分:1)
为模拟器创建AVD时,可以选择启用前后摄像头。如果您为模拟器启用了此选项,则可以像使用普通手机(使用相机应用程序或通过系统)一样访问相机。
如果您没有看到,可能没有在模拟器图像上启用相机选项。
答案 2 :(得分:1)
我将假设您已在模拟器上启用了相机,并希望自己访问它的功能,而不是打开现有的相机应用程序。您需要使用Android中的功能来实际访问此硬件,并且您还需要授予应用程序使用它的权限。
private void startCamera(){ //First check if a camera is available if(getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)){ Log.d("CameraApp", "It has a camera"); Camera cam = Camera.open(); //Start using the camera. From here on out you should be able to access it's functions. cam.unlock(); cam.startPreview(); } else { Log.d("CameraApp", "It does not have a camera"); Toast.makeText(this, "No camera available", Toast.LENGTH_SHORT).show(); } }
完成后一定要关闭它。
private void stopCamera(){ cam.stopPreview(); cam.release(); }
将此添加到您的AndroidManifest.xml以获得您的应用程序权限:
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
每个功能(缩放,自动对焦等)都需要自己添加权限。
另请参阅此内容以获取更多信息:http://developer.android.com/reference/android/hardware/Camera.html