Android Widgets開發入門
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的學習能對你有所幫助!