闪光灯和呼吸灯亮灭的控制

来源:互联网 发布:网络金融的模式 编辑:程序博客网 时间:2024/04/28 12:13

以下是android5.1 和6.0的一种闪光灯/呼吸灯的打开/关闭的方法,原理很简单,直接往文件里面写入数据。

1,闪光灯的打开/关闭   5.1 和6.0 都适用

闪光灯亮度值存放路径如下:

private String FLASHLIGHT_NODE = "/sys/class/leds/flashlight/brightness";


  打开/关闭所对应的ASCII码值

  final byte[] LIGHTE_ON = { '1', '2', '7' }; // 字符127的ASCII码值    final byte[] LIGHTE_OFF = { '0' }; //字符0的ASCII码值


  打开闪光灯

 FileOutputStream flashlight;            try {                 flashlight = new FileOutputStream(FLASHLIGHT_NODE);                flashlight.write(LIGHTE_ON);                flashlight.close();             } catch (Exception e) {             }


  关闭闪光灯

  FileOutputStream flashlight;        try {             flashlight = new FileOutputStream(FLASHLIGHT_NODE);            flashlight.write(LIGHTE_OFF);            flashlight.close();         } catch (Exception e) {        }


   2,呼吸灯  5.1 代码如下

   

呼吸灯亮度值存放路径如下:

private static final String BLUE_BRIGHTNESS = "/sys/class/leds/blue/brightness";


  打开/关闭所对应的ASCII码值

    final byte[] ON  = { '1' }; // 字符127的ASCII码值    final byte[] OFF = { '0' }; //字符0的ASCII码值


  打开呼吸灯

FileOutputStream fileOutputStream1;        try {            fileOutputStream1 = new FileOutputStream(BLUE_BRIGHTNESS);            fileOutputStream1.write(ON);            fileOutputStream1.close();         } catch (Exception e) {        }   


 

关闭呼吸灯

 FileOutputStream fileOutputStream;        try {            fileOutputStream = new FileOutputStream(BLUE_BRIGHTNESS);            fileOutputStream.write(OFF);            fileOutputStream.close();         } catch (Exception e) {        }


 

最后不要忘记了,因为是往文件中直接写入值,所以需要系统权限,虽然这样很不安全。

 

3,呼吸灯  6.0 代码如下

 

首先获取PowerManager管理类,

private  IPowerManager mPower;mPower = IPowerManager.Stub.asInterface(ServiceManager.getService("power"));mPower.SetBreathOrNotificationLight(false); // 关闭呼吸灯mPower.SetBreathOrNotificationLight(true);  // 打开呼吸灯


这样子获取系统服务,然后调用其函数,这样就安全了。

 

 

0 0
原创粉丝点击