Android Widgets开发入门是本文要介绍的内容,主要是来了解Android Widgets实例开发显示电源电量widgets,具体内容的实现来看本文详解。
Android开发的应用除了程序应用,还有是Widget应用。好多人会开发程序应用而不会开发Widget应用。
先简单说说Widget的原理。widgets是在桌面上的一块显示信息的东西,也通过单击Widget跳转到一个程序里面。而系统自带的程序,典型的Widget是music,这个Android内置的音乐播放小程序。这个是典型的Widget+app应用。就是一个程序既可以通过Widget启动,也可以通过App启动。
Widget就是一个AppWidgetProvider+一个UI界面显示(预先绑定了好多Intent),界面上的信息可以通过程序控制而改变,单击Widgets,上的控件只能激发发送一个Intent,或发出一个Service的启动通知。而AppWidgetProvider可以拦截这个Intent,而进行相应的处理(比如显示新的信息)。
我们先来看看AndroidManifest.xml中的代码:
这里很清楚的可以看出AppWidgetProvider就是一个receiver的东西。
在receiver中
代表了一个widget_provider代码如下:
这个是Widget的显示设置,是对Widget属性的一个配置文件这个android:minHeight是Widget的高,这个android:minWidth
是Widget的宽。这个android:updatePeriodMillis属性是设置Widget页面的
更新页面的时间的频率。而这个android:initialLayout属性是表示的是初始化页面的布局,Android里画UI的地方都是通过xml文件,也可以通过代码程序来画,不过这样画的太麻烦了。
建一个类BatteryMonitor继承于AppWidgetProvider,而AppWidgetProvider继承与android.content.BroadcastReceiver,所以TestAppWidget就是一个拦截处理Intent的BroadcastReceiver,这些Intent只能在Androidmainfest里设置来拦截处理。
在onUpdate中设置窗口界面:
启动一个服务来更新电源电量:
- context.startService(new Intent(context, BatteryMonitorReceiver.class));
在xml中注册服务。
代码下载地址:http://files.cppblog.com/AutomateProgram/BatteryMonitor.rar
小结:Android Widgets开发入门的内容介绍完了,希望通过Android Widgets的学习能对你有所帮助!