zoukankan      html  css  js  c++  java
  • Android android-common 常用功能和工具集合

    本文内容

    • 环境
    • android-common 项目结构
    • 演示 android-common
    • 参考资料

    android-common 主要包括如下内容:

    • 缓存,包括图片缓存、预取缓存、网络缓存。
    • 公共 View,即功能封装好的部件,包括下拉获得最新和上拉加载更多 ListView、底部加载更多 ScrollView、滑动一页 Gallery 等等。
    • 常用工具类,包括网络、下载、资源操作、Shell、文件读写、Json、序列化/反序列化、随机数、集合(Array、List、Map)、APK 包等等。

    该演示可以说是常见效果的集合,估计作者攒了好久,但作者将各个依赖的项目放得到处都是,还要现找再引用才行。android-common 演示项目缺了三个项目的引用,真不知道他是无心,还有意。为什么不将完整的解决方案,放到 github 上。

    另外,作者还在 Demo 里实现了一个广告~shit~

    注意:所有项目中的 android-support-v4.jar 包版本要一致。

    下载 Demo

    环境


    • Windows 2008 R2 64 位
    • Eclipse ADT V22.6.2,Android 4.4.2(API 19)
    • SAMSUNG GT-8618,Android OS 4.1.2

    android-common 项目结构


    下载 Demo 后,压缩包包含如下文件夹。

    1

    图 1 压缩包内容

    将这四个目录 import 到 eclipse 中,会是五个项目,如下图所示:

      2-12-22-3

      图 2 项目结构

      • android-auto-scroll-view-pager 是 auto-scroll-view-pager 项目。
      • library 和 ListSamples 是,ViewPagerIndicator 项目。
      • trinea-andorid-common 和 trinea-android-demo,是 android-common 库及其演示项目。

      4

      图 3 主程序,显示所有演示的内容

      演示 android-common


      缓存类

      • 主要特性
      1. 获取及预取新图片 ,包含二级缓存。
      2. 可选择多种缓存算法(FIFO、LIFO、LRU、MRU、LFU、MFU等13种)或自定义缓存算法。
      3. 可方便的保存及初始化恢复数据。
      4. 省流量性能佳,仅有一个线程获取图片。
      5. 支持 HTTP 请求、header 设置及不同类型网络处理。
      6. 根据系统配置初始化缓存。
      7. 支持等待队列。
      8. 包含map的大多数接口。
      • 图片缓存。适用获取图片较多,且图片使用频繁的应用,包含二级缓存,如新浪微博、twitter、微信头像、美丽说、蘑菇街、花瓣、淘宝等等。

      6-0

      图 4 图片缓存

      • 图片 SD 卡缓存。适用获取图片较多,且较大的情况。而需要二级缓存及 ListView 或 GridView 图片加载推荐使用上面的“图片缓存”。

      5-0

      图 5 图片 SD 卡缓存

      • 网络缓存。适用网络获取内容不大的应用,尤其是 API 接口数据,如新浪微博、twitter 的 timeline、微信公众账号发送的内容等等。

      7-0

      图 6 网络缓存

      公用 View

      功能封装好的部件。

      • “下拉获得最新及上拉加载更多” ListView

      8-0

      图 7 “下拉获得最新及上拉加载更多” ListView

      • 滑动(或项)的图片库

      9-0

      图 8 滑动(或项)的图片库

      • 滑动到顶部或底部时响应的 ScrollView

      10-0

      图 9 滑动到顶部或底部时响应的 ScrollView

      • ViewPager Multi Fragment

      13-0

      图 10

      • ViewPager Demo

      14-0

      图 11 ViewPager 演示

      工具类

      目前,包括 HttpUtils、DownloadManagerPro、ShellUtils、PackageUtils、PreferencesUtils、JSONUtils、FileUtils、ResourceUtils、StringUtils、ParcelUtils、RandomUtils、ArrayUtils、ImageUtils、ListUtils、MapUtils、ObjectUtils、SerializeUtils、SystemUtils、TimeUtils。

      • 下载管理 DownloadManager

      11-0

      图 12 下载管理

      以及 Android root 权限及 APK root 静默安装、图片工具类(Drawable、Bitmap、byte 数组相互转换;根据 url 获得 InputStream、Drawable、Bitmap)等。

      参考资料


      下载 Demo

    • 相关阅读:
      2014 ACM/ICPC Asia Regional Guangzhou Online HDU 5024 Wang Xifeng's Little Plot
      HDU 5015 2014 ACM/ICPC Asia Regional Xi'an Online 233 Matrix
      POJ 1269 Intersecting Lines(直线相交的判断)
      POJ 3304 Segments
      POJ 2318 TOYS
      The 2014 ACM-ICPC Asia Mudanjiang Regional First Round C ZOj 3811
      unique函数(先记下来)
      计算几何常用算法(数学知识)
      HUD 3461 codelock 纯题意解释,不含思想
      POJ 1182 食物链
    • 原文地址:https://www.cnblogs.com/liuning8023/p/3964690.html
    Copyright © 2011-2022 走看看