我想通过编程来打开和关闭安卓手机的LED或闪光灯,但在三星,谷歌nexus的闪光灯是不亮的。我用了很多方法来解决这个问题,但是没有得到好的结果。
Camera mycam = Camera.open();
Parameters p = mycam.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
mycam.setParameters(p);
我使用这些代码,也给所有的许可,但问题是同样的,它不工作在三星,谷歌网络。
发布于 2013-02-21 20:00:27
你可以试试这个,它可能会对你有帮助:
private void flashOn() {
camera = Camera.open();
Parameters params = camera.getParameters();
// Build.MODEL.equals("GT-P1000")
if (Build.MANUFACTURER.equalsIgnoreCase("SAMSUNG")
|| Build.MANUFACTURER.equalsIgnoreCase("LG"))
params.setFlashMode(Parameters.FLASH_MODE_ON);
else
params.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(params);
camera.startPreview();
camera.autoFocus(new AutoFocusCallback() {
public void onAutoFocus(boolean success, Camera camera) {
}
});
}
private void flashOff() {
if (camera != null) {
camera.stopPreview();
camera.release();
}
}
并在您的清单文件中添加以下内容:
<permission
android:name="android.permission.FLASHLIGHT"
android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
android:protectionLevel="normal" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-feature android:name="android.hardware.camera.flash" />
https://stackoverflow.com/questions/15000336
复制相似问题