gpt4 book ai didi

android - 插入其他线程时,相机打开需要更多时间

转载 作者:太空宇宙 更新时间:2023-11-03 11:18:48 25 4
gpt4 key购买 nike

我正在写android的频闪灯代码。三星galaxy ace不支持闪光模式。所以我自己写了。这是我用来使它成为频闪灯的代码。但它阻塞了 android 应用程序的主线程(UI 线程),这是我不希望发生的。当我将这段代码插入新线程并运行它时,当我测量它时,开启时间更长。为什么会这样?

Camera cam = Camera.open();     
Camera.Parameters pon = cam.getParameters();
Camera.Parameters poff = cam.getParameters();

while(true) {
try {
//d = new Date();
//System.out.println("ON START " + d.getSeconds());

cam.setParameters(pon);
//because FLASH_MODE_TORCH isnt supported
pon.setFlashMode(Camera.Parameters.FLASH_MODE_ON);
pon.setFocusMode(Camera.Parameters.FOCUS_MODE_INFINITY);

s1.start();
cam.startPreview();
cam.autoFocus(new AutoFocusCallback() {
public void onAutoFocus(boolean success, Camera camera) {
camera.autoFocus(this);
}
});

Thread.sleep(500);
//d = new Date();
s1.stop();
System.out.println("ON FOR milliseconds : " + s1.getElapsedTime());
cam.stopPreview();

s2.start();
Thread.sleep(500);
s2.stop();
System.out.println("OFF FOR milliseconds : " + s2.getElapsedTime());
} catch (InterruptedException e) { e.printStackTrace(); }
}

我只是在new runnable中插入上面的代码说start,在线程中插入时ON周期比较多。耗时以毫秒为单位。

最佳答案

使用消息处理程序或异步任务。参见 Handler

关于android - 插入其他线程时,相机打开需要更多时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12453835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com