我想快速打开/关闭 Android 智能手机相机的 LED 闪光灯,我想知道是否有人知道硬件/操作系统限制规范?
到目前为止,我在我的三星 GT s7580 上使用的闪光灯软件在我尝试打开和关闭时似乎有相当长的延迟,而我想要制作的应用程序需要将灯保持打开 10 次一秒钟...
我是不是找错了树?
最佳答案
我也在想同样的事情,我在 Samsung Galaxy Ace 3 GT-S7275Y 中得到了 50 个开/关周期大约 2.5 到 3 秒的时间 我使用了已弃用的 Camera 对象,我使用的代码粘贴在下面:
Camera cam;
Camera.Parameters p;
public void turnOnFlashLight() {
if (cam != null) {
p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
cam.setParameters(p);
}
}
public void turnOffFlashLight() {
if (cam != null) {
p.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
cam.setParameters(p);
}
}
public void prepareCamera() {
if (cam == null) {
try {
cam = Camera.open();
p = cam.getParameters();
if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)) {
p.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
cam.setParameters(p);
cam.startPreview();
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(getBaseContext(), "Exception throws in turning on flashlight.", Toast.LENGTH_SHORT).show();
}
}
}
public void flashSpeedTest(View v) {
prepareCamera();
long startTm = System.nanoTime();
for (int x = 0; x < 100; ++x) {
if (x % 2 == 0)
turnOnFlashLight();
else
turnOffFlashLight();
}
long elapsed = System.nanoTime() - startTm;
Misc.showMessage(this, String.format("%.3f seconds", elapsed/1e9));
}
关于android - Android 相机闪光灯打开/关闭的速度有多快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28166019/