闪光灯火炬功能,而不是通过应用程序,小部件的工作中承上启下5 [英] flash torch functionality not working through app-widget in nexus 5
问题描述
闪光灯开启,精细的应用程序(增加surface_view到布局),当我尝试开启闪光灯,通过应用程序,窗口小部件它不工作。我用相机和的 SurfaceView 这里是code我使用
相机mCamera;
SurfaceView preVIEW;
mCamera = Camera.open();
mCamera.set previewDisplay(preview.getCameraHolder());
参数PARAMS = mCamera.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_TORCH);
mCamera.setParameters(PARAMS);
mCamera.start preVIEW();
补充许可,并在明显的特点是:
<使用-权限的Android:名称=android.permission.CAMERA/>
<使用-权限的Android:名称=android.permission.FLASHLIGHT/>
<使用特征的android:NAME =android.hardware.camera机器人:要求=FALSE/>
<使用特征的android:NAME =android.hardware.camera.autofocus机器人:要求=FALSE/>
<使用特征的android:NAME =android.hardware.camera.flash机器人:要求=FALSE/>
相机需要一个表面,坚持以打开
Flashlight..however SurfaceView不能被应用到一个小部件。因此,这是你所需要的......
添加到您的 turnFlashOn
code:
尝试{
mCamera.set previewTexture(新表面纹理(0));
}赶上(IOException异常E){
e.printStackTrace();
}
此外,删除所有引用在code到surfaceview,因为它并不适用于一个部件
Flash is turning-on fine from application (added surface_view to the layout), when I try to turn-on flash through app-widget it's not working. I used Camera and SurfaceView Here is the code I am using
Camera mCamera;
SurfaceView preview;
mCamera = Camera.open();
mCamera.setPreviewDisplay(preview.getCameraHolder());
Parameters params = mCamera.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_TORCH);
mCamera.setParameters(params);
mCamera.startPreview();
Added permission and features in Manifest are:
<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" />
The camera needs a surface to cling to in order to open the
Flashlight..however SurfaceView cannot be applied to a widget. So this is what you need to.....
Add this to your turnFlashOn
code:
try {
mCamera.setPreviewTexture(new SurfaceTexture(0));
} catch (IOException e) {
e.printStackTrace();
}
Also, remove all references to surfaceview in your code as it is not applicable in a widget
这篇关于闪光灯火炬功能,而不是通过应用程序,小部件的工作中承上启下5的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!