说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Android Widget开发实例-电量监控

HTML文档下载 WORD文档下载 PDF文档下载
一个简单的电量监控代码很好地演示了Android平台下Widget开发中的基础方式。

作者:Android开发网

一个简单的电量监控代码可以很好的演示Android平台下Widget开发中的基础方式,比如appWidget如何于Service交互以及RemoteViews的演示。完成的工程代码我们稍作美化后提供下载,同时下次开始我们提供一些国外比较优秀的开源工程实例做剖析,从2007年11月至今SDK发布已经近两年了,相信大家可以看到整个Google Android平台的开发还是十分简单的,难度等级和J2ME相似,相信入门的网友只要经常光顾Android开发站点一定会很好掌握的,具体请看如下代码:

 

import android.app.Service;import android.appwidget.AppWidgetManager;import android.appwidget.AppWidgetProvider;import android.content.BroadcastReceiver;import android.content.ComponentName;import android.content.Context;import android.content.Intent;import android.content.IntentFilter;import android.os.IBinder;import android.widget.RemoteViews;public class BatteryMonitorWidget extends AppWidgetProvider{    public void onUpdate( Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds )    {               context.startService(new Intent(context, BatteryMonitorReceiver.class));    }    public static class BatteryMonitorReceiver extends Service    {        private int currentBatteryLevel = 0;        private BroadcastReceiver batteryReceiver = new BroadcastReceiver()        {            @Override            public void onReceive( Context context, Intent intent )            {                currentBatteryLevel = intent.getIntExtra( "level", 0 );            }        };        @Override        public void onStart( Intent intent, int startId )        {            //注册一个动作改变事件捕获,这里为电量改变时即ACTION_BATTERY_CHANGED            registerReceiver( batteryReceiver, new IntentFilter( Intent.ACTION_BATTERY_CHANGED ) );              RemoteViews views = new RemoteViews( getPackageName(), R.layout.main );  //从layout下main.xml中构造widgets            //这里我们应该判断currentBatteryLevel的数值来显示图片电量等级,比如battery_level_1或battery_level_5等等,下面是n            views.setImageViewResource( R.id.ImageView01, R.drawable.battery_level_n );            views.setTextViewText( R.id.myText, currentBatteryLevel + "%" );  //从BroadcastReceiver读取当前的电量等级            ComponentName thisWidget = new ComponentName( this, BatteryMonitorWidget.class );            AppWidgetManager manager = AppWidgetManager.getInstance( this );            manager.updateAppWidget( thisWidget, updateViews ); //开始执行了        }        @Override        public IBinder onBind( Intent intent )        {                  return null;        }    }}

 

 

为什么项目估算偏差如此之大? Cloud Connect大会Day2:开源与云数据中心 CTO俱乐部第110期下午茶:利用麦肯锡7S模型构建管理框架 跨平台打造移动原生应用的10大武器 iOS与Android本地数据库新选择:使用Objective-C和Java编写 Cloud Connect大会day3:Intel的大数据与Metacloud私有云 农民也玩数据挖掘:基于物联网的高端种菜模式 前谷歌Android开源项目主管Queru加盟雅虎 Windows 8.1售价出来了!分别是119.99美元、199.99美元 对AngularJS进行性能调优的7个建议 为什么说UX设计师的黄金时代已来临? 豌豆荚:“应用内搜索”是打通移动互联网最具竞争力的入口 苹果发布会后的冷思考,64位芯片为开发者带来了什么? 中兴Geek评测:高性价比的英特尔处理器智能机 SAE的资源、安全隔离与Container 平板电脑悬了 Phablets或成为未来移动设备的主流 拿什么拯救你:黑莓今年将裁员4500人 推荐10款免费的在线UI测试工具 最好的Java IDE之争:Eclipse PK IntelliJ IDEA Intel发布E5 2600 v2处理器 开放硬件监控信息 XP寿终大限将近 微软再次呼吁用户尽早“分手” Dropbox CTO:离开办公室就焦虑的技术宅男 看雪学院“走进企业看安全”活动百度站落幕 九大设计技巧+作品赏析 激发你的创作灵感! 排名前十CEO的工资条,你怎么看? 麻省理工TR35之IT界年轻有为创新者(下) Storm的“翻版”:LinkedIn开源实时数据处理系统Samza 呼吸监测耳机:一个在“呼吸”上做文章的可穿戴设备 谷歌7年210亿美元的基础设施建设,及可供17万家庭使用的风电 Touch ID很安全?德国黑客宣布已绕过苹果指纹识别系统 纽约警方鼓励用户升级iOS 7 你想好了吗? 谁能给我连接sql2000数据库数据原的原代码===火急!!! 象素转换成毫米问题 为什么每个女孩都问我喜欢长头发呢,还是短头发? 如何用WIN98引导盘恢复系统的引导!!!!!! 怎么安装出来还是没有图标? 如何用WIN98引导盘恢复系统的引导!!!! 一个老问题 ?ACCESS2000的数据库有几行坏了,无法用ACCESS修复/无法删除,一读到该行ACCESS就直接退出,怎么办? 各位,感觉学数学难不难? 壹?ACCESS2000的数据库有几行坏了,无法用ACCESS修复/无法删除,一读到该行ACCESS就直接退出,怎么办? 号外:今天终于卖了侯捷的Inside The C++ Object Model ,休息时可以翻番,为了祝贺特灌水100 谁能给我连 接sql2000数据库数据原的原代码===火急!!! 高手帮忙,如何让我能用jbuilder5? 请问用Perl编写用户交互程序 请问各位大哥,上海的高程考试在哪里报名啊? dcom 服务器关闭时怎能捕捉异常 三戒,有请~~~ 谁知道websphere的试用版怎么做掉? 打印DataReport时怎样用API改变系统的纸型,急急急急急急急急急!!!! 新来的~~来报到了~~只能送20分~~希望大家不嫌弃~~ 请成功使用JBuilder5的朋友指教!! 激情放送 五位QQ号,100块,你会要吗? 555~~~~挂了PASCAL挂了,5555~~~~我学不好DELPHI 了5555谁帮我呀!!! 有编过游戏修改器的高手吗? jinesc领分~~~ 如何使UpDown每次增加或减少0.5? 有个问题很困惑,请教 上傳后,服務器端如何接收? 各位高手好!现在有谁是正在使用 LINUX 上网的.报一下好吗!!!!!! 我快神经了,求救 各位高手好!现在有谁是正在使用 LINUX 上网的.报一下好吗!!!!!!!! 别笑我傻,又有简单问题 各位高手好!现在有谁是正在使用 LINUX 上网的.报一下好吗!!!!!!! 各位高手好!现在有谁是正在使用 LINUX 上网的.报一下好吗!!!!!!!!!!!! 各位高手好!现在有谁是正在使用 LINUX 上网的.报一下好吗!!!!!!!!! 大家都谈谈建立什么样的目录结构能更好的管理硬盘里的东东 lilo 如何设置??请赐教!! 各位高手好!现在有谁是正在使用 LINUX 上网的.报一下好吗!!!!!!!!!!!1 mts是什么? mts是什么?? 学习汇编要什么基础,要看什么样的书,有没有好的汇编的电子参考书下载呢? 腾讯的qq怎么不好用了? 有CCNA,Scjp2,高程的计算机本科生能卖多少?(答者有分,只能给33分,没办法) word的表格问题 如果开另外一个线程来进行注册码检验,是否比较难CRACK? 请问高程考试考试的难度 怎么让程序启动的时候接受参数? mts是什么??? 我也调查:这里有多少冠名以“独孤”的,为何独孤???? 菜鸟SOS 我们明天将动身去杭州 用英语怎么说? 他们打算在那呆几天用英语怎么说 我们经常在一起玩用英语怎么说 今天是几号?是五月五日.英语翻译.(快加5分) 帮我用英语翻译这句话" 减轻父母的负担" (我的女孩)求翻译英语, 他出生在1998年 英语翻译 英语翻译A jet lagged dreamer just back from a trying family get-together where,between forkful of lasagna and lapful of coffee cake crumbs “虽然我做不了第一个” 用英语咋说有好评 用英语翻译“你更愿意让谁来实施这个计划” 请帮忙用英语翻译一下“一个孩子对自己爸爸的认识”这句话 求翻译~第一个必好评!七年级英语! 制定工作计划(英文翻译) 用英语翻译:我和我的爸爸妈妈在周末去看动物 你在那里,请问英语怎么读. 英语翻译:制定一个计划 (四个单词的词组) 英语翻译 爸爸妈妈去哪了 你在那里干什么用英文怎么说 需要我们接机以及预订酒店吗 英语翻译 王叔叔用英语怎么说 你在那里用英语怎么讲 英语翻译哪位高手能帮我翻译一些下面的句子呢?(中译英) 采纳的话会重赏的哦(100),--------------------------------------------------------------------先生,不好意思!房号是要客人在办理入住时前台的同 王磊明天要动身去美国用英语怎么说? 问:你在那里读书?英语怎么说 请告诉我们您到上海的具体日期,是否需要我公司帮您预订酒店. 我叔叔不再住那儿了.用英语怎么说 帽子的英语怎么读, 你是什么时候到达上海的?英语翻译. 我叔叔住在北京 用英语怎么说 学霸用英文怎么读,学渣呢? “你知道我一直都在关注你吗?”用英语翻译 我叔叔自从那时以来就居住在镇南用英语怎么说? 昆虫英语怎么读?给好评 求“我一直都在”英文翻译,情侣之间说的 叔叔英语怎么说? 生物用英语怎么读, 你需要我的时候我一直都在你的身边 这一句的英文翻译 你在上海住了几年英语怎么说啊 香港是特别行政区用英语怎么说 替我英文翻译一下.我一直都在等你给我的回答,可是你从没回答我. 和上海的朋友约好去北京用旅游英语怎么说 他去香港了 英语怎么说急用!写了! 我一直都在,但是你从不知道”用英语怎么说? 五年前你在北京还是上海 我在上海 用英语怎么说 这周去香港 英语怎么说 英语翻译对餐具进行分类是为了便于清洗,也可以避免餐具之间的相互污染.先清洗油污比较少的,再清洗油污重的餐具,这样可以使清洗发挥到最好效果. 上海到北京有直达飞机吗?英语怎么说? 香港用英语怎么说 谷歌英语翻译 我离开北京去上海用英语怎么说? 我希望再去一次那里用英语怎么说?用 过去时态 说啊. 英语翻译此时此刻,只有音乐是能帮我解决疲劳. 你到中国来已经多久了?英语怎么说你第一次什么时候来中国的? "和某人在一起"用英语怎么说? 英语翻译The first version of the PageRank technology was created while Larry and Sergey attended Stanford University,which owns a patent to PageRank.The PageRank patent expires in 2017.We hold a perpetual license to this patent.In October 2003,we 你来中国多少年了 用英语怎么说 "与某人在一起"用英语怎么说?^-^ 我的爸爸已经去了北京他已经离开一周了用英语怎么说 你打算在大连呆多久.用英语怎么说还有:你来大连多久了? 没有人愿意和他呆在一起用英语怎么说?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn