实例:AppListLoader

这篇文章将是我的第四篇,也就是最后一篇该系列的文章。请在评论里面告诉我他们是否实用。前面几篇文章的链接例如以下:

四:实例:AppListLoader

应大众的要求。我已经写了一个演示样例应用演示怎样正确的实现一个自己定义Loader。应用名称为:AppListLoader,它是一个演示应用。能够查询并列出你的Android设备上全部已安装的应用程序。

应用已经改动。又一次构建(没有bug)了API Demos里面提供的LoaderCustom.java样例。该应用使用AppListLoader(AsyncTaskLoader的子类)来查询数据,使用LoaderManager来管理Activity/Fragment声明周期中Loader的内容。



AppListLoader注冊了两个BroadcastReceiver用来监听系统范围内的会影响底层数据源的广播(译者注:应用的安装和卸载都会发送广播,而这两个操作都会影响我们须要监听的数据源。所以这句话是这个意思。翻译起来好麻烦)。新安装、更新、移除应用由InstalledAppObserver来负责监听。本地化改变(locale changed)由SystemLocaleObserver负责监听。比如,当用户将语言从英语改为西班牙语,SystemLocaleObserver就会检測到。并通知AppListLoader又一次查询数据。这样程序就行显示每一个应用的西班牙语名称了(假设每一个应用都提供了相应的西班牙语名称)。点击“Change
language”button,然后观察Loader的对于该事件的无缝响应(非常酷,不是吗。!

)。


当Loader/LoaderManager有关的事件发生时,Log信息会在Logcat中显示出来。所以当分析Logcat时,记得确保程序正在执行。

希望它对你更好的了解Loader和LoaderManager协同工作关系,而且理解Activity/Fragment生命周期对它们的影响。

能够使用应用名称“com.adp.loadercustom”来过滤,以得到更好的结果。




能够通过点击以下的链接从Google Play下载该应用:


源码在GitHub上面可用。下载。导入到Eclipse里面去。做不论什么你想做的改动。


假设这一系列文章实用,请在以下留下你的评论让我知道。一如既往的。请自由提问。

译者注:
两天零碎的时间翻译了四篇文章,收获非常大,同一时候感觉Loader和LoaderManager并非想象的那么难。文章的质量非常高,假设有朋友知道更好的Android有关的文章,请一定要让我知道,独乐乐不如众乐乐。

LoaderManager使用具体解释(四)---实例:AppListLoader的更多相关文章

  1. Paxos协议超级详细解释+简单实例

    转载自:  https://blog.csdn.net/cnh294141800/article/details/53768464 Paxos协议超级详细解释+简单实例   Basic-Paxos算法 ...

  2. LoaderManager使用具体解释(三)---实现Loaders

    这篇文字将介绍Loader<D>类,而且介绍自己定义Loader的实现.这是本系列的第三篇文章. 一:Loaders之前世界 二:了解LoaderManager 三:实现Loaders 四 ...

  3. LoaderManager使用具体解释(二)---了解LoaderManager

    了解LoaderManager 这篇文章将介绍LoaderManager类,这是该系列的第二篇文章. 一:Loaders之前世界 二:了解LoaderManager 三:实现Loaders 四:实例: ...

  4. LoaderManager使用具体解释(一)---没有Loader之前的世界

    来源: http://www.androiddesignpatterns.com/2012/07/loaders-and-loadermanager-background.html 感谢作者Alex ...

  5. 【甘道夫】HBase(0.96以上版本号)过滤器Filter具体解释及实例代码

    说明: 本文參考官方Ref Guide,Developer API和众多博客.并结合实測代码编写.具体总结HBase的Filter功能,并附上每类Filter的对应代码实现. 本文尽量遵从Ref Gu ...

  6. Linux下的压缩zip,解压缩unzip命令具体解释及实例

    实例:压缩server上当前文件夹的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前文件夹 unzip filename.zip ================= ...

  7. kafka具体解释四:Kafka的设计思想、理念

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/suifeng3051/article/details/37606001      本节主要从总体角度 ...

  8. Spring 注解详细分析解释有实例

    概述 注释配置相对于 XML 配置具有很多的优势: 它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作.如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 PO ...

  9. MQTT---HiveMQ源代码具体解释(四)插件载入

    源博客地址:http://blog.csdn.net/pipinet123 MQTT交流群:221405150 实现功能 将全部放在plugins文件夹下的全部符合plugin编写规范的plugin ...

随机推荐

  1. python+Eclipse+pydev环境搭建1

    编辑器: Eclipse + pydev插件 1. Eclipse是写JAVA的IDE, 这样就可以通用了,学习代价小.  学会了Eclipse, 以后写Python或者JAVA 都可以. 2. Ec ...

  2. jvm 内存溢出 在myeclipse中加大tomcat的jvm内存 java.lang.OutOfMemoryError: PermGen space

    使用myeclipse启动两个SSH2的部署在tomcat6下的项目 报出java.lang.OutOfMemoryError: PermGen space 解决办法: 在myeclipse中加大jv ...

  3. Swift详解之NSPredicate

    言:谓词在集合过滤以及CoreData中有着广泛的应用.本文以Playground上的Swift代码为例,讲解如何使用NSPredicate. 准备工作 先在Playground上建立一个数组,为后文 ...

  4. 移动web touch事件

    参考:http://www.cnblogs.com/dojo-lzz/p/5452575.html wap中的原生touch 事件,touchstart.touchmove.touchend.touc ...

  5. /etc/rc.d启动目录详解

    操作系统:CentOS6.6_32位 控制脚本目录/etc/rc.d,该目录下存在各个运行级别的脚本文件,执行ls /etc/rc.d,显示结果为:init.d  rc  rc0.d  rc1.d   ...

  6. 分分钟钟学会Python - 模块

    目录 模块 1 模块基础知识 2 random 返回随机生成的一个实数 3 hashlib 摘要算法模块 Hmac算法 4 time /datetime 时间模块 5 getpass 密码不显示(只能 ...

  7. Spring Boot 返回Html界面

    @Controller public class HelloController { @RequestMapping("/") public String index(){ ret ...

  8. reversing.kr easykeygen 之wp

    补充: int(x,[base]): 就是将x(通常是一个字符串)按照base进制转换成整数. 比如: ’) ##转换成整数10 ) ##'按16进制转换,将得到整数16 ) ##得到255 int( ...

  9. HDU1166-敌兵布阵,线段数模板题~~

    敌兵布阵 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...

  10. 《Shell脚本学习指南》书籍目录

    摘要:Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的.但是它比Windows下的批处理更 ...