[Android] 如何制作手电筒程序

news/2024/10/15 14:17:14/

继iphone的手电筒开发完成后,接下来我便著手开始Android如何制作手电筒的程序

我的跨平台引擎框架CloudBox已建立好iphone版的程序,但却对于Android上如何操控闪光灯一无所知

因此我做了个小范例示范如何用Android来控制闪光灯

此代码在Samsung Galaxy S2测试可运作

public class CloudLed {boolean m_isOn;Camera m_Camera;public boolean getIsOn() { return m_isOn; }public CloudLed(){m_isOn = false;}public void turnOn(){if(!m_isOn){m_isOn = true;try{m_Camera = Camera.open();Camera.Parameters mParameters;mParameters = m_Camera.getParameters();mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);m_Camera.setParameters(mParameters);}catch(Exception ex){}}}public void turnOff(){if(m_isOn){m_isOn = false;try{Camera.Parameters mParameters;mParameters = m_Camera.getParameters();mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);m_Camera.setParameters(mParameters);m_Camera.release();}catch(Exception ex){}}}
}

我建立了一个CloudLed类,将Camera再做一次封装,只处理闪光灯相关部份的代码

在Android中,要开启摄像头只需透过Camera.Open就可以简单开启,开启后取得Camera.Parameters就可以设定参数

我们所需要的手电筒功能,只需要将其设为FLASH_MODE_TROCH即可

关闭时只要设置为FLASH_MODE_OFF后将其release就可以了

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.clouddevelop.ledtest"android:versionCode="1"android:versionName="1.0"><uses-sdk android:minSdkVersion="8" /><application android:icon="@drawable/icon" android:label="@string/app_name"><activity android:name=".LEDTestActivity"android:label="@string/app_name"android:screenOrientation="portrait"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application><uses-permission android:name="android.permission.CAMERA"></uses-permission>
</manifest>

在这边有个事项要注意,我们需在AndroidManifest.xml中设置存取摄像头的权限。

<uses-permission android:name="android.permission.CAMERA"></uses-permission>

完整范例下载



http://www.ppmy.cn/news/736042.html

相关文章

从提示框:适用于Windows的iPad接口仿真,Easy Access iPhone手电筒和Kindle收藏管理...

Once a week we round up some of the great reader tips to share. Today we’re looking at an iPad interface emulator for Windows, a fast-access flashlight app for the iPhone, and a Windows-based way to organize Kindle collections. 每周一次&#xff0c;我们汇总…

手电筒光照效果果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns" http://www.w3.org/1999/xhtml"> <head> <title>好玩的手电筒光照效果…

Android怎样绕开Camera打开手电筒的LED

Android原生系统没有提供手电筒的API&#xff0c;很多手电筒的apk都是通过打开camera然后调用Flash来打开LED。 这种传统的做法有很多弊端&#xff0c;首先通过camera打开手电筒&#xff0c;会增加因为camera出粗而导致手电筒异常的风险&#xff1b;其次&#xff0c;因为要先打…

iphone手游模拟器_如何将iPhone用作手电筒

iphone手游模拟器 If you find yourself in a situation where you need some extra light, the flash on your iPhone’s camera works great as a flashlight. There are more features to this than you might expect, so here’s how to use it. 如果您发现自己需要更多的光…

Android平板怎么截屏,ipad mini怎么截图 iPad/iPad mini截图技巧图解

截图不仅在电脑中很常用&#xff0c;比如在看到某些漂亮的画面、编写一些教程的时候都需要用到截图。最近在微博上看到一些分享iPad截图技巧小知识很受大家欢迎&#xff0c;由于微博篇幅小&#xff0c;描述的不是很清楚&#xff0c;不少网友依然没有学会使用iPad截图。今天脚本…

IOS 手电筒实例

作者&#xff1a;朱克锋 邮箱&#xff1a;zhukefengiboxpay.com 转载请注明出处&#xff1a;http://blog.csdn.net/linux_zkf -(void) turnOnLed:(bool)update { AVCaptureDevice *device [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo]; if ([device h…

getsockname()和getpeername()

API 1. getpeername() #include <sys/socket.h>int getpeername(int sockfd, struct sockaddr *restrict addr,socklen_t *restrict addrlen);// On success, returns 0. On error, -1 is returned and errno is set.返回连接到sockfd对端的地址&#xff0c;存入addr。…

Springboot2.6+Swagger2无法扫描到接口:No operations defined in spec!

先检查一遍swagger扫描开启&#xff0c;enable&#xff1a;true&#xff1b;扫描路径配置正确后仍然还是不显示 springboot2.6swagger2.9.2无法扫描到接口问题解决 多模块环境下,swaggerConfig配在公共模块,发现部分模块无法扫描到Controller接口。如下图所示&#xff1a; 经检…