多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
### 5.1 RemoteViews的应用 RemoteViews在实际开发中,主要用在通知栏和桌面小部件的开发过程中。通知栏每个人都不陌生,主要是通过NotificationManager的notify方法来实现的,它除了默认效果外,还可以另外定义布局。桌面小部件则是通过AppWidgetProvider来实现的,AppWidget-Provider本质上是一个广播。通知栏和桌面小部件的开发过程中都会用到RemoteViews,它们在更新界面时无法像在Activity里面那样去直接更新View,这是因为二者的界面都运行在其他进程中,确切来说是系统的SystemServer进程。为了跨进程更新界面,RemoteViews提供了一系列set方法,并且这些方法只是View全部方法的子集,另外RemoteViews中所支持的View类型也是有限的,这一点会在5.2节中进行详细说明。下面简单介绍一下RemoteViews在通知栏和桌面小部件中的使用方法,至于它们更详细的使用方法请读者阅读相关资料即可,本章的重点是分析RemoteViews的内部机制。