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 压缩包内容
将这四个目录 import 到 eclipse 中,会是五个项目,如下图所示:
图 2 项目结构
- android-auto-scroll-view-pager 是 auto-scroll-view-pager 项目。
- library 和 ListSamples 是,ViewPagerIndicator 项目。
- trinea-andorid-common 和 trinea-android-demo,是 android-common 库及其演示项目。
图 3 主程序,显示所有演示的内容
演示 android-common
缓存类
- 主要特性
- 获取及预取新图片 ,包含二级缓存。
- 可选择多种缓存算法(FIFO、LIFO、LRU、MRU、LFU、MFU等13种)或自定义缓存算法。
- 可方便的保存及初始化恢复数据。
- 省流量性能佳,仅有一个线程获取图片。
- 支持 HTTP 请求、header 设置及不同类型网络处理。
- 根据系统配置初始化缓存。
- 支持等待队列。
- 包含map的大多数接口。
- 图片缓存。适用获取图片较多,且图片使用频繁的应用,包含二级缓存,如新浪微博、twitter、微信头像、美丽说、蘑菇街、花瓣、淘宝等等。
图 4 图片缓存
- 图片 SD 卡缓存。适用获取图片较多,且较大的情况。而需要二级缓存及 ListView 或 GridView 图片加载推荐使用上面的“图片缓存”。
图 5 图片 SD 卡缓存
- 网络缓存。适用网络获取内容不大的应用,尤其是 API 接口数据,如新浪微博、twitter 的 timeline、微信公众账号发送的内容等等。
图 6 网络缓存
公用 View
功能封装好的部件。
- “下拉获得最新及上拉加载更多” ListView
图 7 “下拉获得最新及上拉加载更多” ListView
- 滑动(或项)的图片库
图 8 滑动(或项)的图片库
- 滑动到顶部或底部时响应的 ScrollView
图 9 滑动到顶部或底部时响应的 ScrollView
- ViewPager Multi Fragment
图 10
- ViewPager Demo
图 11 ViewPager 演示
工具类
目前,包括 HttpUtils、DownloadManagerPro、ShellUtils、PackageUtils、PreferencesUtils、JSONUtils、FileUtils、ResourceUtils、StringUtils、ParcelUtils、RandomUtils、ArrayUtils、ImageUtils、ListUtils、MapUtils、ObjectUtils、SerializeUtils、SystemUtils、TimeUtils。
- 下载管理 DownloadManager
图 12 下载管理
以及 Android root 权限及 APK root 静默安装、图片工具类(Drawable、Bitmap、byte 数组相互转换;根据 url 获得 InputStream、Drawable、Bitmap)等。
Android android-common 常用功能和工具集合相关推荐
- 用于Android开发的免费类库和工具集合
用于Android开发的免费类库和工具集合,按目录分类. Action Bars ActionBarSherlock Extended ActionBar FadingActionBar GlassA ...
- android 常用编译工具,Android 抖音常用反编译工具
Android 抖音常用反编译工具 常用反编译工具 apktool :反编译apk,重构. dex2jar :反编译apk,解压 classes.dex 文件 JD-GUI :将class文件反编译成 ...
- 2021年最常用的Seo工具集合
在当前的搜索引擎中,已经有大量的免费或付费的seo工具.一般来说,它们可以分为几类,包括但不限于网站管理员工具,外部链查询工具,seo综合查询工具,关键字挖掘工具,网站安全检测工具,网站速度测试工具, ...
- android 单位转换工具,Android单位转换----常用单位转换工具类
前言 有一定开发经验的小伙伴肯定会发现这样一个问题,当我们用xml来写布局的时候,通常用的是dp.sp.(相信大家都知道为什么这样用).当我们用Java代码来创建View控件时,会发现方法接收的参数都 ...
- android选择头像弹窗,Android App开发常用功能之用户头像选择-Go语言中文社区
前言 现在的APP基本都有个人资料的填写,基本的都有头像的选择,支持拍照和从本地相册选择,剪切圆形头像的功能,现在用个小demo实现以下. 下面看一下效果图 上代码: 主界面代码 package co ...
- android Textview 功能,Android:TextView的常用功能
android:autoText如果设置,将自动执行输入值的拼写纠正.此处无效果,在显示输入法并输入的时候起作用 android:bufferType指定getText()方式取得的文本类别.选项ed ...
- Android App开发常用功能之用户头像选择
前言 现在的APP基本都有个人资料的填写,基本的都有头像的选择,支持拍照和从本地相册选择,剪切圆形头像的功能,现在用个小demo实现以下. 下面看一下效果图 上代码: 主界面代码 package co ...
- NO.4 Android开发中常用框架及工具
android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新ListView.ViewPager.WevView.ExpandableListView.GridView ...
- 常用加解密工具集合|视频图片加解密方案
最近工作需要做视频加密解密,大概需求就是摄像头录制好的视频实时加密存储到本地,防止别人拔掉存储卡把视频拷贝走. 大胆设想一下,假如现在很多网约车车内都有摄像头,这些对着乘客和司机的车内摄像头都是实时录 ...
最新文章
- c语言首尾指针相同 则,6.C语言指针练习题.doc
- Scala分支控制 if-else之单分支的使用
- 在Linux系统里安装Virtual Box的详细步骤 1
- Error:java: Annotation processing is not supported for module cycles.异常解决
- 英语学习笔记2019-10-11
- 固态硬盘—国内视频行业的暂时救星?
- 书籍推荐——按角色划分
- servlet html js提交表单,使用jquery.form.js实现form表单无刷新提交简单示例
- 二分模板 from y总
- “#if 0/#if 1 ... #endif”的作用
- 计算机说课稿模板小学数学,小学数学优质说课稿模板
- rtl8111gr服务器系统,6款主板板载网卡对比
- CT计算机组成及其特点,浅析CT图像的特点及常用扫描方式
- 全球首例,美国医生为患者移植猪心脏,术后情况良好
- 《评人工智能如何走向新阶段》后记(再续22)
- cloudera/quickstart
- 进度条媒体对象和Well组件
- Mac 安装CodeBlocks
- Cisco PT最新版下载路径
- CentOS下配置Samba实现文件夹共享
热门文章
- 新买的笔记本电脑怎么分盘_电脑怎么增加C盘空间?黑客教你不花钱增加C盘空间...
- C++:搭建深度学习环境及实战
- 图像传感器与信号处理——光学系统
- Non-Blind图像反卷积论文整理
- 【NLP实战系列】Tensorflow命名实体识别实战
- 【知识便利贴】ImageNet得的比Best Paper还牛的Longuet-Higgins奖是啥?
- Shouldn't CSRs automatically add default version?
- 世界农业趋势-国际农民丰收节贸易会: 新技术谋定生产过程
- 自己实现spring核心功能 三
- Django中使用极验Geetest滑动验证码