我很抱歉在所有其他类似的问题中发布了另一个问题,但我尝试过的问题都没有。我正试图打开闪光灯。这是我的清单:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-feature android:name="android.hardware.camera"
android:required="false" />
<uses-feature android:name="android.hardware.camera.autofocus"
android:required="false" />
<uses-feature android:name="android.hardware.camera.flash"
android:required="false" />
这是我打开手电筒的代码:
Camera cam = Camera.open();
Parameters p = cam.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
cam.setParameters(p);
cam.startPreview();
我做错了什么?
答案 0 :(得分:1)
您确定您的设备可以处理FLASH_MODE_TORCH吗? camera.getParameters()getSupportedFlashModes(); 检查FLASH_MODE_TORCH是否在此调用返回的列表中。
答案 1 :(得分:0)
我使用了以下清单:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-feature android:name="android.hardware.camera.flash" />
<uses-sdk android:minSdkVersion="14"/>
注意在清单的右侧添加它! 在这里看看模型: http://developer.android.com/guide/topics/manifest/manifest-intro.html
打开闪光灯的代码如下所示:
public void myFlash (View view) {
Context context = this;
context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
Camera cam = Camera.open();
Camera.Parameters p = cam.getParameters();
p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
cam.setParameters(p);
cam.startPreview();
//cam.stopPreview();
//cam.release();
}
答案 2 :(得分:0)
可能是这个link会帮助你。我发现这对我有用。