我正试图在小部件中使用相机LED手电筒.我已经找到了关于这个主题的几个主题(即后面提到的那个 ......),现在我正试图控制灯光使用:
Camera cam = Camera.open();
Parameters p = cam.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
cam.setParameters(p);
cam.release();
Run Code Online (Sandbox Code Playgroud)
在AndroidManifest.xml中尝试了不同的权限,目前我有:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-feature android:name="android.hardware.camera.flash" />
Run Code Online (Sandbox Code Playgroud)
我正在Galaxy Tab上测试这个,因为我手头没有任何其他Android设备:灯没亮.所以我现在有几个问题:
感谢您的任何见解!
顺便说一句,我很快就通过快速设置进行了测试,这里提到了几次.手电筒也不能用于快速设置.
请注意,Galaxy Tab stil使用android 2.2.我看到2.2和2.3之间有一些变化.
评论:我知道它必须以某种方式工作,因为我发现市场上的其他应用程序与Galaxy Tab完美配合.
评论2:如果我设置了cam.setParameters(p); 并使用getFlashMode()直接向相机询问当前状态,它正确返回FLASH_MODE_TORCH.但是,如果我释放相机并重新打开它,它将返回FLASH_MODE_OFF.这几乎就像Camera对象知道了请求,但并没有真正将它传递给硬件!?
-
康斯坦丁评论后,我删除了cam.release(); 部分.他是对的,如果你松开相机,设置就不会持续存在.如果再次使用cam.open(),您将获得一个关闭灯的新实例.尽管如此,光还没有在星系标签上工作.所以,如果你试图通过一个小部件来控制它,我想很难保持亮点.一旦后台服务完成,相机对象就会自动释放,因此灯会再次关闭.我的问题仍然存在,特别是为什么相机不能在一开始就打开.
我目前正致力于手电筒开/关.我收到此错误java.lang.RuntimeException: Fail to connect to camera service我不知道为什么会发生此错误.我提到了许多解决方案,但我的问题仍未解决.当手电筒打开时,不会发生错误,但是当手电筒关闭时则会发生错误.
我的代码主要代码.
我的清单许可:
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus"/>
Run Code Online (Sandbox Code Playgroud) 有没有办法设置我想要的LED强度?我知道打开我使用的LED:
p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
mycam.setParameters(p);
Run Code Online (Sandbox Code Playgroud)
但是这段代码只是打开了LED.但有没有办法为LED设置不同的强度以获得更强的光线或降低光线强度?
如此多的LED手电筒API问题适用于Android.我不敢问另一个,但是这里......
使用经过验证的真实FLASH_MODE_TORCH,我可以满足我的三星Galaxy SII并启用LED闪光灯.在我朋友的Galaxy Nexus上,没有这样的运气.也不是我的另一个朋友的Droid X.
我注意到似乎需要特定的本机IOCTL调用的设备数量不是很少.这是Galaxy Nexus的情况吗?我如何找到编程参考?
我正在做标准的FLASH_MODE_TORCH /"flash-mode"="torch",startPreview()链.
令人失望的是,这个看似标准的API似乎并不是那么普遍.
我正在使用相机LED灯FLASH_MODE_ON.
三星Galaxy Ace只有三种闪光模式:开,关和自动.
FLASH_MODE_TORCH 不适用于三星Galaxy Tab和三星Galaxy Ace 2.2.1
这是我的代码如何打开我的相机LED
Camera cam;
cam = Camera.open();
Parameters params = cam.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_ON);
cam.setParameters(params);
cam.startPreview();
cam.autoFocus(new AutoFocusCallback() {
public void onAutoFocus(boolean success, Camera camera) {
}
});
Run Code Online (Sandbox Code Playgroud)
并通过使用以下来关闭它:
cam.stopPreview();
cam.release();
Run Code Online (Sandbox Code Playgroud)
代码参考:在Android中使用相机手电筒
但问题是LED灯仅持续5秒钟.然后它会自动关闭.
任何人都可以告诉问题可能在哪里.或者任何方式连续打开LED灯直到它要求停止.
我在最近的Marshmallow构造中有关于相机的问题,更具体地说是手电筒.在任何预先Marshmallow版本上,我需要做的就是打开/关闭闪光灯,如下所示:
private void turnFlashOn(final Camera camera, int flashLightDurationMs) {
if (!isFlashOn()) {
final List<String> supportedFlashModes = camera.getParameters().getSupportedFlashModes();
if (supportedFlashModes != null && supportedFlashModes.contains(Camera.Parameters.FLASH_MODE_TORCH)) {
mParams.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
camera.setParameters(mParams);
}
}
}
Run Code Online (Sandbox Code Playgroud)
和
private void turnFlashOff(Camera camera) {
if (camera != null) {
final List<String> supportedFlashModes = camera.getParameters().getSupportedFlashModes();
if (supportedFlashModes != null && supportedFlashModes.contains(Camera.Parameters.FLASH_MODE_OFF)) {
mParams.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
camera.setParameters(mParams);
}
}
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,Marshmallow设备开始在野外崩溃.不知何故,camera.getParameters()并camera.setParameters()开始失败的消息,如:
RuntimeException:getParameters失败(空参数)
RuntimeException:setParameters失败
我尝试在获取参数之前启动并停止预览,这不再引发错误.但是,当我打电话时,预览不会恢复camera.startPreview().
我担心释放相机并重新打开它是不可能的,因为这需要几秒钟而且会产生糟糕的体验.
有关如何可靠地打开/关闭Marshmallow手电筒的任何建议吗?
camera android android-camera flashlight android-6.0-marshmallow
我正在寻找Android相机LED闪光灯的帮助,以改变它的强度像这个应用程序.
我检查了以下链接,但我没有得到确切的结果.
我无法执行此链接(对我来说似乎很有希望).
任何帮助是极大的赞赏.
android android-intent android-hardware flashlight android-sdk-2.3
我正在使用AVCaptureDevice.setTorchModeOn(level)方法以可变亮度打开手电筒。
在我的旧 iPhone SE 上,它运行良好——当我level从0变为 时,我可以清楚地看到 4 种不同的亮度级别1。
但在 iPhone 11 Pro 上,手电筒仅在水平为1.0! 如果远离最高水平,它的亮度(与控制中心的手电筒相比)。
我尝试使用maxAvailableTorchLevel常量,但结果与使用1.0.
还尝试了超过的值1.0- 这会导致异常(如预期的那样)。
有人也有这个问题吗?也许有一些解决方法?
我正在使用Firebase后端在Swift中构建一个iOS应用程序.我的应用需要高级搜索选项.我被告知我应该通过这个github链接使用Flashlight/ElasticSearch https://github.com/firebase/flashlight
假设我的应用程序名称是SneakerSearch和我的
Firebase Project_ID is- sneakersearch-az12
Firebase Web_API_Key is- abc123XYZ000...
Firebase App_Url is- gs://sneakersearch-az12.appspot.com
Run Code Online (Sandbox Code Playgroud)
由于我是Heroku和Node.js的新用户,因此我需要一些建议.我以前从未学过,但我已经安装了Heroku工具带,'sudo gem heroku install'已经完成.
我列出了github方向/步骤以及我为每个方向采取的步骤.我需要方向帮助:1,4,5,6,9,10,12和15.
1.Install and run ElasticSearch or add Bonsai service via Heroku
Run Code Online (Sandbox Code Playgroud)
我在Heroku开了帐户.
1.问题:我是否需要创建我的应用程序的名称并在设置我的Heroku帐户后进行部署,还是应该等到第9步?
2.git clone https://github.com/firebase/flashlight
Run Code Online (Sandbox Code Playgroud)
2.我将上面的内容克隆到我的iOS应用程序的项目文件夹中
3.npm install
Run Code Online (Sandbox Code Playgroud)
3.在提示我首先运行"npm init"然后我运行"npm install"
4. edit config.js (see comments at the top, you must set FB_URL and FB_SERVICEACCOUNT at a minimum)
Run Code Online (Sandbox Code Playgroud)
4A.-问题:什么是"FB_SERVICEACCOUNT"?我正在使用Firebase 3,我在控制台的服务帐户上找不到任何内容.除了我已经制作的Firebase swift项目之外,我还必须使用node.js为我的项目设置另一个Firebase帐户吗?
4B.-问题:我在哪里"编辑config.js"并将我的FB_URL和FB_SERVICEACCOUNT设置为?这应该在我的package.json文件中吗?
5.node app.js (run the app)
Run Code Online (Sandbox Code Playgroud)
5.-问题:在终端我运行"node app.js"并得到"throw err; ^".为什么我会收到此错误?
6.curl -X POST http://localhost:9200/firebase
Run Code Online (Sandbox Code Playgroud)
6.-问题:这是为了什么?
7.cd flashlight
Run Code Online (Sandbox Code Playgroud)
7.switched到手电筒目录
8.heroku …Run Code Online (Sandbox Code Playgroud)