當前位置:成語大全網 - 漢語詞典 - Android桌面Widget的局限性和適用性

Android桌面Widget的局限性和適用性

1.Widget並不支持所有的控件和布局,只是Android布局和控件的壹個子集。(當然不支持自定義視圖。)

1.支持的布局:

2.支持的控件:

第二,Widget不支持動畫動畫。

1.動畫效果可以通過位圖、layoutAnimation和幀動畫實現:

這些方法雖然可以實現簡單的動態效果,但是非常容易造成內存溢出問題,導致OOM和閃回。歸根結底,小部件的設計重點在於輕量級。需要長時間放在桌面上的小部件,如果有大量的動態效果,會消耗大量的系統性能和電量,這違背了它的設計初衷。

2.動畫效果和方向傳感器測試:

動態效果:使用setImageViewBitmap方法設置壹個簡單的旋轉動畫,兩分鐘後動畫將停止播放。

Sensor:當應用程序進入後臺執行onStop方法時,方位傳感器會在壹分鐘後停止監聽並回調,此時後臺服務會正常運行,Widget時間會正常更新,但方位傳感器不再回調監聽。(經測試,只需開通前臺服務即可正常監控。)

總結:強烈建議Widget需要動畫或者來電傳感器顯示,部分手機會提示電量異常,強行殺死程序。

第三,保持活力的過程:

進程保活所涉及的問題非常復雜,而且越來越嚴格。測試了三款應用:

日歷:清除後臺任務後,小部件時間停止更新。

萬年歷:正常更新。

中國日歷:正常更新。

摘要:日歷中沒有設置保活方案,或者保活失敗。

萬年歷和中國萬年歷監控系統時區變更廣播和時間手動設置廣播,手動設置時間或時區後這兩個Widget同步更新。同時還有壹個正常延時的廣播,系統會每分鐘發壹次,但是這個廣播在8.0系統之後就不允許靜態註冊了,也就是只能在APP運行的時候監控。目前還不清楚這兩個app是如何保持活躍度的,或者說是如何在8.0以上的系統上監控這個廣播,做到即使後臺被殺也能每分鐘刷新壹次Widget時間。

關鍵詞“輕量級”

1.由於Widget側重於輕量級,對動態效果的支持較差,所以Widget界面主要是靜態的。

2.支持的布局和控件非常少,並且不支持自定義視圖。界面以簡單布局為主。(如圖片+文字)

3.實時性要求不高。(比如每天壹首古詩)

4.與用戶的簡單交互。(例如,播放器播放、暫停、下壹首歌曲)