Applition的初始化准备
图库的一切动作都明显地起源于Application.这是区别与其他那种感觉不到Application存在,仅仅感觉到Activity存在的简单应用的一个特点。
图库的application就是GalleryAppImpl.java.
可以说GalleryAppImpl是图库的基石。它扩展Application这是必定的,代表他就是一个Application,同时它额外实现了GalleryApp的interface.
GalleryApp中很清楚地表明了自己的作为图库Application要做的事情。
数据处理(DataManager),图像缓存(ImageCacheService),线程调度(ThreadPool),
以及andorid应用普遍需要的传递信息规则Context,UI和主进程调度(Looper),资源(Resources)和数据库处理(ContentResolver)。
有了GalleryAppImpl对GalleryApp的implement,就有了在图库的任何处理时,都能将Context,DataManager,ImageCacheService,ThreadPool,DownloadCache
这些数据作为全局变量取出。
同时我们肯定不能忽略GalleryAppImpl的oncreate中,对于图库数据的初始化。其中包括GalleryUtils,WidgetUtils,PicasaSource。
GalleryUtils的initialize中,初始化了图库的图片和video影像的数据。这些数据的源头在于多媒体数据库。
PicasaSource的initialize中,初始化了google的Picasa图片数据。
因为工程中未用到WidgetUtils,所以,对这部分不是很清楚。等清楚以后,再回来写清楚。但是,这个widget的初始化,不属于图库的基本功能这一点是确定的。如果仅仅根据大致处理和名称来看,应该是图库额外附带的一个widget.用于简单显示图片的那种。
以上,就是图库Application的初始化所做的工作。