如何制作Android手电筒程序

本文介绍如何在Android应用中实现手电筒功能。通过封装Camera API,控制闪光灯的开关,并展示了完整的代码示例及必要的权限配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.huyi.dish;

import android.hardware.Camera;

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> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值