android led闪烁功能,如何在Android应用层中制作一个LED指示灯效果

如何在Android应用层中制作一个LED指示灯效果

发布时间:2020-12-08 16:12:59

来源:亿速云

阅读:86

作者:Leah

本篇文章给大家分享的是有关如何在Android应用层中制作一个LED指示灯效果,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

实现方法如下:

public class LEDActivity extends Activity implements View.OnClickListener {

private static final String TAG = "LED";

Button mLedTest;

int mLedStatus = 0;

private final int mLedColorRed = 0xFFFF0000;

final byte[] LIGHT_ON = { '2', '5', '5' };

final byte[] LIGHT_OFF = { '0' };

private final int RED = 0;

private int color = RED;

String RED_LED_DEV = " /sys/class/leds/torch/brightness";

public void onCreate(Bundle paramBundle) {

super.onCreate(paramBundle);

setContentView(R.layout.led_test);

mLedTest = ((Button)findViewById(R.id.ledcolor));

mLedTest.setOnClickListener(this);

// setledlightcolor(color);

// mLedTest.setTextColor(mLedColorRed);

// mLedTest.setText("RED");

// mLedStatus = 1;

}

public void onClick(View v) {

Log.d("LEDActivity", "---onClick---mLedStatus=" + mLedStatus);

switch (v.getId()) {

case R.id.ledcolor:

if(mLedStatus == 0) {

mLedTest.setText("开");

mLedStatus = 1

}else if(mLedStatus == 1) {

mLedTest.setText("关");

mLedStatus = 0;

}

break;

}

}

@Override

public void finish() {

setledlightcolor(-1);

super.finish();

}

private void setledlightcolor(int color) {

logd("set:" + color);

boolean red = false;

switch (color) {

case RED:

red = true;

break;

default:

break;

}

try {

FileOutputStream foRed = new FileOutputStream(RED_LED_DEV);

Log.d(TAG, "foRed" + foRed);

fRed.write(red ? LIGHT_ON : LIGHT_OFF);

fRed.close();

} catch (Exception e) {

loge(e);

}

}

void logd(Object d) {

Log.d(TAG, "" + d);

}

void loge(Object e) {

Log.e(TAG, "" + e);

}

}

直接在xml中写一个Button,用来实现点击按钮,其实很简单,只是把源码的led指示灯的路径拿出来,用过输出流,将String转化,就能读出灯的状态,直接运行就可以实现该功能.

以上就是如何在Android应用层中制作一个LED指示灯效果,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/301549.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能时代,学好数学很重要!

随着科技的快速发展,人工智能的重要性日渐显现。而数学知识蕴含着处理智能问题的基本思想与方法,是理解复杂算法的必备要素。在机器学习工作流程中,数学与代码高度交织在一起,代码通常可以根据数学直观地构建,甚至会共…

android编译的错误日志,Android Studio:编译器错误输出窗口在哪里?

当我在Android Studio中“运行”我的项目时,在“消息”窗口中,我得到:Gradle:FAILURE: Build failed with an exception.* What went wrong:Execution failed for task :play01:compileDebug.> Compilation failed; see the compiler erro…

为什么选择ASP.NET Core

什么是.NET有一次小飞去面试,面试官上来就问了一个宏观的问题:“你觉得什么是.NET”?小飞的脑子嗡嗡的,支吾了半天,才吐了一些碎片化的词语:“跨平台、开源、微软…”虽然作为一个.NET人,但是小…

c++中的new_handler

原文地址:http://blog.csdn.net/wzq981264/article/details/673630 在过去或者传统的模式中,当operator new不能满足一个内存分配请求的时候,它会返回一个空指针,但是现在如果operator new不能满足一个内存分配请求的时候&#xf…

抢不到“猫抓杯”怎么办?这些女神更喜欢

▲数据汪特别推荐点击上图进入玩酷屋不久前才送走了西方情人节,男同胞们的第二个“送礼节”----女神节。这个令所有女生翘首、期待、憧憬、摩拳擦掌的日子,令所有男士小心翼翼、挑礼物到崩溃的日子,就要到了。小木作为妇女之友,听…

程序出Bug,一定是环境的锅!

现象前几天,一个客户反映说,他看到的数据顺序是乱的,不是按照日期倒排。但是在测试环境、预生产环境,都无法重现问题,即使使用相同的程序版本。定位查看代码,出问题的功能使用了第三方ORM框架,无…

android webview js 失效,Android WebView注入JQuery、JS脚本及执行无效的问题解决

在项目中遇到JQuery注入后,执行无效的问题。我们知道必须在网页加载完成后,也就是在onPageFinished()方法被调用后才能执行被注入的JS。但是在有些手机上并不能成功执行,我的解决方案是设置一秒延迟后注入JS,成功了!wh…

AIX逻辑卷管理(LVM)

VG PV PP LV LP关系图 转载于:https://www.cnblogs.com/limt/archive/2013/04/06/4199257.html

鸿蒙操作系统如何打通 Windows 操作系统?

华为:我们选择拥抱 Windows华为给出的解决方案是在微软 Windows 操作系统中部署 HarmonyOS 分布式插件。运行 Windows 操作系统的电脑和运行鸿蒙操作系统的华为手机将形成超级终端,文件资源管理器实现互通。在 Windows 文件资源管理器中,将显…

凯立德导航android历史版本,凯立德导航升级2020版

凯立德导航升级2020版是一款非常专业的手机机车导航软件,它可以为大家提供便捷的导航服务,用户只需要输入自己想去的地方,软件会智能推荐一条最便捷的路线,同时会告知用户目的地附近热门的吃喝玩乐场所,有需要的用户来…

用 Python 实现打飞机

全世界只有3.14 % 的人关注了数据与算法之美所用技术和软件python 2.7pygame 1.9.3pyCharm准备工作安装好 pygame 在第一次使用 pygame 的时候,pyCharm 会自动 install pygame。下载好使用的素材。技术实现初始化 pygame首先要初始化 pygame ,之后设定一…

QT-Linux开发环境的搭建

转自:http://blog.csdn.net/wh_19910525/article/details/8118381 如果读者需要在Linux下进行开发,可以使用下面简单的步骤来搭建环境: (下面以Ubuntu 12.04 为例进行说明)1. 下载软件 到http://get.qt.nokia.com/qt/s…

把HttpClient换成IHttpClientFactory之后,放心多了

前言关于HttpClient的使用,个人在很多场景都派上用场了,比如在Winform或后台服务中用其调用接口获取和上传数据、微服务中用其进行各服务之间的数据共享等,到目前来看,似乎还没有出现过什么问题,但当我看到官方文档介绍…

android app银联支付,android app 快速接入银联支付流程(android studio版)

刚接触了下银联支付,在网上搜还是看官方文档银联支付都不是很清晰,所以自己总结一篇,希望可以帮助大家快速集成。一.进入下载官网,选择下载手机控件支付demo:https://open.unionpay.com/ajweb/help/file/techFile?pro…

基础排序算法 – 冒泡排序Bubble sort

原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换, 这样一趟过去后,最大或最小的数字被交换到了最后一位, 然后再从头开始进行两两比较交换,直到倒数第二位时结束。 从小到大排序: 原始待排序数组| 6 | 2 | …

这么简单的bug,你改了2天?

大家好,我是Z哥。“这个 bug 的问题不是很明显吗?怎么这么久才搞定?”“就改一行代码,你怎么弄了这么久?”我想上面的言语几乎每个程序员都听到过。特别是面对那些“稍懂技术”的同事的时候。我觉得这篇文章特别适合你…

android最好的3d游戏机,终极盘点:Android必玩十大超猛3D游戏

2010年即将过去,今年是Android平台的发展非常迅猛的一年,系统版本从2.1、2.2一路飙升至2.3,各种手机与平板设备也层出不穷。与此相对的当然就是应用软件的大爆发,根据AndroLib在本周二所公布的数字,Android Market目前…

要学习数据科学知识,这些信息需要知道(数据)

数据科学知识,分享数据干货,追逐科技前沿等方面另外,其他领域的学术进展,资讯以及合适的招聘要获取这些相关的信息,我们觉得这些平台非常的出色,推荐给大家。iNatureID:Plant_ihuman▲ 长按二维…

insert /*+ APPEND */

总结得出以下3点结论:a、非归档模式下,只需append就能大量减少redo的产生;归档模式下,只有appendnologging才能大量减少redo。b、insert /* append */ 时会对表加锁(排它锁),会阻塞表上的除了se…

Csharp实例:武汉智能安检闸机数据接收和解析

项目介绍:本实例主要是接收安检闸机的数据解析并显示到界面上,只做功能实现,不做界面美化硬件:闸机一个、网线一根、电脑主机开发环境:vs2017 系统:win10涵盖知识点:tcp通讯、文件写入、多线程&…