gpt4 book ai didi

android - xperia Z5 上的 LED 手电筒

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:02:30 26 4
gpt4 key购买 nike

我正在使用以下代码打开和关闭 LED 手电筒:

public Flashlight(SurfaceView preview, Context context){
this.preview = preview;
this.context = context;
mHolder = preview.getHolder(); //mHolder is surfaceHolder
mHolder.addCallback(this);
try {
mCamera = Camera.open();
params = mCamera.getParameters();
mCamera.setPreviewDisplay(mHolder);
mCamera.startPreview();

//AUTOFOCUS LASER FIX ON LG G3
List<String> focusModes = params.getSupportedFocusModes();
if (focusModes.contains(params.FOCUS_MODE_INFINITY)) {
params.setFocusMode(params.FOCUS_MODE_INFINITY);
}
else{
if (focusModes.contains(params.FOCUS_MODE_FIXED))
params.setFocusMode(params.FOCUS_MODE_FIXED);
}
mCamera.setParameters(params);
cameraOpened = true;
}catch (Exception e){
cameraOpened = false;
e.printStackTrace();
}
}
private void turnOnFlashlight(){
flashlightOn = true;
params.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
mCamera.setParameters(params);
}
private void turnOffFlashlight(){
flashlightOn = false;
params.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
mCamera.setParameters(params);
}

它在大多数手机上运行良好,但我无法在 xperia Z5 上运行。我没有用于测试的 Z5,所以我只从用户响应中知道它。所以我想问一下在Xperia Z5上是否有任何其他(最好是有效的)方法来打开手电筒。

感谢转发

最佳答案

正如评论中已经提到的,我发现有 3 个步骤可以使闪光灯出现(到目前为止似乎在所有设备上都有效)

cam.setParameters(p); // will trigger flash on most devices
// Needed for some devices.
cam.setPreviewTexture(new SurfaceTexture(0));
// Needed for some more devices.
cam.startPreview();

既然您做了其中的 2 个,请尝试添加 PreviewTexture,它应该可以工作。可以在此处找到工作手电筒的完整代码 Flashlight Widget

关于android - xperia Z5 上的 LED 手电筒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33334011/

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