android打开闪光灯
① Android Camera怎样打开关闭闪光灯
在AndroidManifest中注册相应的权限:
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.autofocus"/>
打开闪光灯关键代码:
Camera camera = Camera.open();
camera.startPreview();
parameter = camera.getParameters();
parameter.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameter);
关闭闪关灯关键代码:
parameter = camera.getParameters();
parameter.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(parameter);
② Android开启闪光灯的几种办法
1、用IHardwareService直接控制Android1.5以前是直接提供这个接口的,之后呢,需要我们自己来做一下。在你的项目中新建一个包android.os,新建一个IHardwareService.aidl文件,内容如下:[java] view plain<span style="font-size:18px;">package android.os; /** {@hide} */ interface IHardwareService { // obsolete flashlight support boolean getFlashlightEnabled(); void setFlashlightEnabled(boolean on); }</span> 然后在你的程序中引入[java] view plainimport android.os.IHardwareService; /** * 设置闪光灯的开启和关闭 * @param isEnable * @author linc * @date 2012-3-18 */ private void setFlashlightEnabled(boolean isEnable) { try { Method method = Class.forName("android.os.ServiceManager").getMethod("getService", String.class); IBinder binder = (IBinder) method.invoke(null, new Object[] { "hardware" }); IHardwareService localhardwareservice = IHardwareService.Stub.asInterface(binder); localhardwareservice.setFlashlightEnabled(isEnable); } catch (Exception e) { e.printStackTrace(); } } 这样就可以开启闪光灯了。要使用的权限:
[html] view plain<span style="font-size:18px;"> <uses-permission android:name="android.permission.FLASHLIGHT" /> <uses-permission android:name="android.permission.HARDWARE_TEST" /> </span> 2、用照相机来控制闪光灯这是思维的另一个方向。Camera自带丰富的接口与Parameters,我们只管拿来使用就好了。[java] view plain<span style="font-size:18px;"> private Camera camera = null; private Parameters parameters = null; //直接开启 camera = Camera.open(); parameters = camera.getParameters(); parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);//开启 camera.setParameters(parameters); //直接关闭 parameters.setFlashMode(Parameters.FLASH_MODE_OFF);//关闭 camera.setParameters(parameters); camera.release();</span> 如果这样遇到问题的话,可以尝试用camera的preview方法:[java] view plainprivate void OpenLightOn() { if ( null == m_Camera ) { m_Camera = Camera.open(); } Camera.Parameters parameters = m_Camera.getParameters(); parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); m_Camera.setParameters( parameters ); m_Camera.autoFocus( new Camera.AutoFocusCallback (){ public void onAutoFocus(boolean success, Camera camera) { } }); m_Camera.startPreview(); } private void CloseLightOff() { if ( m_Camera != null ) { m_Camera.stopPreview(); m_Camera.release(); m_Camera = null; } }
③ Android如何打开闪光灯
一、声明闪光灯的权限
<uses-permissionandroid:name="android.permission.CAMERA"/>
<uses-permissionandroid:name="android.permission.FLASHLIGHT"/>
package com.google.yang.myapplication;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
/**
* 闪光灯的控制
*
* @author yang
*/
public class MainActivity extends AppCompatActivity {
private Button open;
private Button close;
private Button openFlicker;
private Button closeFlicker;
private Camera camera;
private Boolean isShanshuo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
open = (Button) this.findViewById(R.id.open);
close = (Button) this.findViewById(R.id.close);
openFlicker = (Button) findViewById(R.id.openFlicker);
closeFlicker = (Button) findViewById(R.id.closeFlicker);
open.setOnClickListener(openOnClickListener);
close.setOnClickListener(closeOnClickListener);
openFlicker.setOnClickListener(openFlickerOnClickListener);
closeFlicker.setOnClickListener(closeFlickerOnClickListener);
}
/**
* 打开手电筒
*/
private OnClickListener openOnClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
open();
}
};
/**
* 关闭手电筒
*/
private OnClickListener closeOnClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
close();
}
};
/**
* 开启闪烁
*/
private OnClickListener openFlickerOnClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
isShanshuo = true;
openFlicker.setEnabled(false);
new Thread(new Runnable() {
@Override
public void run() {
while (isShanshuo) {
open();
try {
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
close();
try {
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
}
};
/**
* 关闭闪烁
*/
private OnClickListener closeFlickerOnClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
isShanshuo = false;
openFlicker.setEnabled(true);
}
};
/**
* 打开闪光灯
*
* @return
*/
private void open() {
try {
camera = Camera.open();
camera.startPreview();
Parameters parameters = camera.getParameters();
parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameters);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 关闭闪光灯
*
* @return
*/
private void close() {
try {
Parameters parameters = camera.getParameters();
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
camera.setParameters(parameters);
camera.release();
camera = null;
} catch (Exception e) {
e.printStackTrace();
}
}
}
④ 手机如何设置来电闪光灯
一、以安卓手机为例,来电闪光灯怎么设置?
Android手机用户只需下载安装“来电闪光灯”这款软件即可获得相应的功能。这款软件的特点如下:
来电闪光灯是一支轻量的APP,最重要的是免费,可以让你的手机在有人来电时发出闪光灯,就算在暗处也可以轻易地找到你的手机,亦可在收到简讯时发出闪光灯,提醒您收到简讯罗!
来电闪光包含以下功能
:
一般模式时启用闪弯碰迹光;震动模式时启用闪光;静音模式时启用闪光;收到简讯时启用闪光。
需要注意的是,想正常使用该软件,需要在设置里面的“辅吵滑助功能”中激活该APP的服务权限。以OPPO手机为例,还需要进入安全中心,将软件添加到“纯净后台”以及其他一键清理类软件的清理白名单中,防止它被系统自动关闭。
进入软件后,我们可以设定闪光灯闪动模式以及频率,建议打开“亮屏不闪”并手动设定休眠时间,起到省电或打扰睡眠的作用。此外,切换到“通知”界面,我们还可将微信、短信、QQ等软件勾选,当上述软件收到推送消息时闪光灯也会工作,让手机随时尽显逼格!
二、以苹果手机为例,来电闪光灯埋并怎么设置?
如果是苹果iPhone产品的话,首先要打开这个功能(设置-通用-辅助功能-LED闪烁以示提醒)。
这个功能是需要在锁屏闭屏的状态下才会闪烁的,如果是在解锁开屏的情况下,来电是不会闪烁发亮的。若在锁屏闭屏状态下还不可以,建议打开此功能后重启一下设备。
⑤ 如何调用Android自带的LED闪光灯
android的LED灯是通过通知来调用的,只是通知类的一个参数,具体大体实现方法如下:
final int ID_LED=19871103;
NotificationManager nm=(NotificationManager)getSystemService(NOTIFICATION_SERVICE);
Notification notification = new Notification();
notification.ledARGB = 0xFFFFFF; //这里是颜色,咱们可以尝试改变,理论上0xFF0000是红色,0x00FF00是绿色
notification.ledOnMS = 100;
notification.ledOffMS = 100;
notification.flags = Notification.FLAG_SHOW_LIGHTS;
nm.notify(ID_LED, notification);
nm.cancel(ID_LED);
⑥ 安卓手机里的手电筒闪光灯不亮是怎么回事
可参考vivo手机的以下方式处理:
1、将手机更新软件版本号后重启再次打开闪光灯尝试;
2、还原手机的所有设置:进入手机设置--系统管理/更多设置--备份与重置/恢复出厂设置中还原所有设置。该操作会导致登录的第三方软件账号需要重新登录,但不会清除手机存储中的照片,视频等文件,请确认不影响某些第三方软件的使用后再进行还原所有设置操作。
3、可直接携带手机前往官方的客户服务中心检测处理,需进入浏览器搜索vivo官网--服务--服务中心--查看全部--选择省市查询当地的服务中心地址以及联系方式。