实例: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”按钮,然后观察Loader的对于该事件的无缝响应(很酷,不是吗!!)。
 
当Loader/LoaderManager有关的事件发生时,Log信息会在Logcat中显示出来。所以当分析Logcat时,记得确保程序正在运行。希望它对你更好的了解Loader和LoaderManager协同工作关系,并且理解Activity/Fragment生命周期对它们的影响。可以使用应用名称“com.adp.loadercustom”来过滤,以得到更好的结果。
 
 
可以通过点击下面的链接从Google Play下载该应用:
 
源代码在GitHub上面可用。下载,导入到Eclipse里面去,做任何你想做的修改。
 
如果这一系列文章有用,请在下面留下你的评论让我知道。一如既往的,请自由提问。
 
译者注:
两天零碎的时间翻译了四篇文章,收获很大,同时感觉Loader和LoaderManager并不是想象的那么难。文章的质量很高,如果有朋友知道更好的Android有关的文章,请一定要让我知道,独乐乐不如众乐乐。

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

  1. XML参考 :XmlReader 详解、实例

    XML参考 :XmlReader 详解.实例-- 详解 转:http://www.cnblogs.com/Dlonghow/archive/2008/07/28/1252191.html XML参考 ...

  2. Protocol Buffer技术详解(Java实例)

    Protocol Buffer技术详解(Java实例) 该篇Blog和上一篇(C++实例)基本相同,只是面向于我们团队中的Java工程师,毕竟我们项目的前端部分是基于Android开发的,而且我们研发 ...

  3. Protocol Buffer技术详解(C++实例)

    Protocol Buffer技术详解(C++实例) 这篇Blog仍然是以Google的官方文档为主线,代码实例则完全取自于我们正在开发的一个Demo项目,通过前一段时间的尝试,感觉这种结合的方式比较 ...

  4. CvMat、Mat、IplImage之间的转换详解及实例

    见原博客:http://blog.sina.com.cn/s/blog_74a459380101obhm.html OpenCV学习之CvMat的用法详解及实例 CvMat是OpenCV比较基础的函数 ...

  5. C语言操作WINDOWS系统存储区数字证书相关函数详解及实例

     C语言操作WINDOWS系统存储区数字证书相关函数详解及实例 以下代码使用C++实现遍历存储区证书及使用UI选择一个证书 --使用CertOpenSystemStore打开证书存储区. --在循环中 ...

  6. httpd配置文件详解及实例

    httpd配置文件详解及实例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.http协议的组成 http协议是C/S架构:我们可以把浏览器(如:IE,Firefox,Safar ...

  7. logback -- 配置详解 -- 四 -- <filter>

    附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appen ...

  8. log4j.properties配置详解与实例

    log4j.properties配置详解与实例 第一步:加入log4j-1.x.x.jar到lib下. 第二步:在工程的src下下建立log4j.properties.内容如下: #OFF,syste ...

  9. Java学习-007-Log4J 日志记录配置文件详解及实例源代码

    此文主要讲述在初学 Java 时,常用的 Log4J 日志记录配置文件详解及实例源代码整理.希望能对初学 Java 编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激!源代码测试通过日期为:20 ...

  10. groupadd命令详解(实例)

     groupadd命令详解(实例)  1.作用groupadd命令用于将新组加入系统. 2.格式groupadd [-g gid] [-o]] [-r] [-f] groupname 3.主要参数-g ...

随机推荐

  1. ping通IP,telnet 3306不通

    一个同事装的MySQL数据库,无法连接.​​1.查看权限​​2.查看防火墙​​检查用户权限,防火墙都没问题,就是无法连接,能ping通,但是telnet 3306 端口无法成功.​​检查了下数据库配置 ...

  2. NE、EQ等比较操作符的意义

    比较所有的 字段类型 要比较所有 的字段类型 ,可以在逻 辑表达式中 使用下列运 算符: <运算符>含 义 EQ 等于 = 等于 NE 不 等于 <> 不 等于 >< ...

  3. Go中的指针与函数接收器

    Go中使用*号表示指针,但是没有指针算数,不能对其进行加减.同时内存管理都由Go来负责,不需要拖动释放内存. Go中的函数接收者,可以为值类型,也可以是引用类型. 看代码: package main ...

  4. win8.1上安装vc6

    win8.1上安装vc6 1.以管理员方式运行SETUP.EXE,然后一路下一步 2.这里需要一点点耐心,等10分钟左右就能过去,电脑会比较卡,有点像假死,还是没有死掉,等等就好了 3.这里选择vc6 ...

  5. 001--VS2013 c++ 游戏框架

    头文件:MainClass.h 内容: #include <Windows.h> //全局函数声明LRESULT CALLBACK WndProc(HWND hwnd, UINT mess ...

  6. EF4.1之基础(实现Code First)

    Code First:顾名思义:就是通过代码生成数据库----通过类生成数据库中对应的表: 首先定义两个类(就是建模的过程): public class Order { public int Orde ...

  7. WIN7笔记本利用命令AP热点

    第一步:以管理员身份运行命令提示符:开始”---搜索栏输入“cmd----右键以“管理员身份运行”自己随便命名,第二步:运行命令:netsh wlan set hostednetwork mode=a ...

  8. Mac nginx PCRE install ngnix

    1 下载:pcre-8.12.tar.gz ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre 2 sudo tar xvfz pcre-8.1 ...

  9. Daily Scrum3

    今天我们小组开会内容分为以下部分: part 1: 汇报之前分配的任务进度: part 2:分配明天的任务. ◆Part 1 组员进度报告 彭佟小组完成的优化目标:     关于软件防滥用及垃圾信息拦 ...

  10. chart.js图表库案例赏析,饼图添加文字

    chart.js图表库案例赏析,饼图添加文字 Chart.js 是一个令人印象深刻的 JavaScript 图表库,建立在 HTML5 Canvas 基础上.目前,它支持6种图表类型(折线图,条形图, ...