开源的Android开发框架-------PowerFramework使用心得(一)总体介绍
PowerFramework是一款几乎囊括了所有Android基础功能的框架应用,这个框架目前是开源的,开发者可以在这个框架的基础上进行二次开发。结合开发者自己的UI设计,可以很快就能开发出具备基础应用功能的Android应用。
框架和DEMO文件下载地址 http://www.ideayapai.com/Application/Home/View/default/PowerFamily/index-2.htm
整套框架主要有以下主要功能:
| 序号 | 功能 | 主要类 | 备注 |
|---|---|---|---|
| 1 | 图片异步加载 | ImageTask | 图片异步加载。可以备注图片是否缓存、缓存状态。 1、缓存-SD卡,路径可设置 2、图片压缩 3、可加载本地和网络图片 4、url为本地视频文件可以显示缩略图 5、中文url图片地址FileNotFoundException解决 |
| 2 | 内置浏览器 | BrowserActivity | 实现内置浏览器功能。封装WebView实现,完成浏览器基本功能。必须在以library源码引用的方式使用,jar文件形式不行。 1、标题颜色、菜单内容可以根据Intent配置 2、菜单功能齐全 3、可与HTTPRequest同步Cookie |
| 3 | 网络请求 | HTTPRequest | 实现网络请求功能。封装了GET和POST方法,使用Bundle传入请求参数,在onRequestOver中返回请求数据。注:Android6.0移除了Apache的HTTPClient,因此当前源码不支持6.0+ 1、同时支持http和https,使用方法一致。 2、GET/POST使用方法一致 3、cookie自动处理,同时与BrowserActivity同步cookie,提供clearCookie方法 4、请求线程池 5、文件下载fileDownload 6、文件上传uploadFile(通用状态下使用) 7、报错使用JSON封装,error ex:{“status”:false,”message”:”网络连接超时”} |
| 4 | 缓存 | Cache | 实现网络请求的缓存,未与HTTPRequest直接结合,使用SQLite进行硬盘存储和Bundle实现内存储存。内存缓存最多50条,可设置LEN_MAX_MEMORY_CAHCE修改。 1、内存和SQLite缓存 2、使用NoSQL的key-value思想进行缓存 3、可将图片序列化之后进行缓存 |
| 5 | 执行Linux命令 | CMD | 执行Linux命令。 1、必须在有root权限下使用,提供查询方法 2、成功不一定有返回信息 |
| 6 | 数据库操作 | DBFarmer | 数据库操作类,其使用方法与FinalDB相似,但内容更精简。 1、直接保存对象 2、保存字符串 3、强制插入(无视对象的id) 4、直接从数据库取出对象或对象列表 6、select/update方式支持by item 7、删除数据、删除表、删除数据库 |
| 7 | 基础Activity | BaseActivity | 建议引用本项目的Activity都继承BaseActivty。 1、规范开发,init中进行控件初始化,initData中进行数据初始化等 2、自动处理4.4之后的浸入式标题栏 3、网络变化监听 4、随时调用exit()方法即可退出整个应用 5、页面可手势finish |
| 8 | SQL连接 | MySQL | 直接操作服务器上的MySQL,由于三方服务器暂停,此功能暂不能用(2016-6-4)。 |
| 9 | 断点下载 | BreakDownload | 断点下载。将文件分为多个文件,seek到不同位置,下载在本地,完成之后再连接在一起。支持重连。 |
| 10 | 数据表格视图 | TableView | 用于显示复杂数据的表格视图,应该在引用源码下使用,在不同模式下(如果发现卡顿),应该设置(切换)模型,setModel。 1、支持多级复杂菜单 2、与横竖ScrollView结合实现数据量太大的情况进行滑动 3、复杂菜单可自定义 4、内容支持html标签 5、自动计算行宽 |
| 11 | 圆形图片 | RoundImageView | 圆形图片,使用方式同ImageView。 |
| 12 | 工具类 | 见com.rederxu.tools包 | 1、ActivityUtils,方便的findViewById 2、Base64Utils,各种转码 3、BitmapUtils 4、DeviceUtils 5、Dialog,自定义dialog,引用源码下可用 6、DisplyUtils,可以得到屏幕相关信息、pix与dip互相转换等 7、FileUtils,文件工具,相关操作齐全 8、HanziToPinyin,中文文字转换拼音 9、ImageUtils 10、IntentUtils 11、MathUtils 12、OpenFile,使用本地应用打开各种文件 13、RegularUtils 14、ScreenShotUtils,截屏,应用外截屏需要root权限 15、StorageUtils,存储相关 16、StringUtils 17、UriUtils |
欢迎各位大牛、大神莅临QQ群进行交流:575026537
开源的Android开发框架-------PowerFramework使用心得(一)总体介绍的更多相关文章
- 开源的Android开发框架-------PowerFramework使用心得(五)网络请求HTTPRequest
GET请求示例 //所有参数都使用Bundle,用putString Bundle bundle = new Bundle(); bundle.putString("username&quo ...
- 开源的Android开发框架-------PowerFramework使用心得(四)数据库管理DBFarmer
DBFarmer是PowerFramework数据库管理工具的集合. 可以进行对象的存储,添加了setter和getter的参数会被收录到数据库中,每个参数作为一个项,int类型的id或_id会被作为 ...
- 开源的Android开发框架-------PowerFramework使用心得(二)图片异步加载ImageTask
图片异步加载.可以备注图片是否缓存.缓存状态. 1.缓存-SD卡,路径可设置 2.图片压缩 3.可加载本地和网络图片 4.url为本地视频文件可以显示缩略图 5.中文url图片地址FileNotFou ...
- 开源的Android开发框架-------PowerFramework使用心得(三)内置浏览器BrowserActivity
使用内置浏览器必须是引用源码的方式(因为jar中不能打包布局文件等资源).内置浏览器是一个继承自BaseActivity的普通Activity,使用WebView实现. 1.简单的打开内置浏览器 In ...
- Android 开发框架汇总
Android 开发框架汇总 时间过的真快,转眼间就要进入到16年的8月了,现在应该是三伏期间,一个字“热”.前端时间整理了一篇“JS前端框架汇总”,然后紧接着又抽时间学习了一下Android开发,在 ...
- 一个快速、完善的Android开发框架整合实践(QuickAndroid)
https://github.com/alafighting/QuickAndroid QuickAndroid 一个快速.完善的Android开发框架整合实践 QA项目简介 本框架QuickAndr ...
- Android 开发框架介绍
一.概述 现android开发有很多开发框架使用,做App不一定用到框架,但好框架的思想也是值得学习.选择合适的开发框架可提供实用功能,简化项目开发提升效率. 二.Afinal框架 简介 Afinal ...
- Android 开源组件 ----- Android LoopView无限自动轮转控件
Android 开源组件 ----- Android LoopView无限自动轮转控件 2015-12-28 15:26 by 杰瑞教育, 32 阅读, 0 评论, 收藏, 编辑 一.组件介绍 App ...
- Android 开发框架
Android 开发框架包括基本的应用功能开发.数据存储.网络访问三大块. 1 应用方面 一般而言,一个标准的Android 程序包括Activity.Broadcast Intent Receive ...
随机推荐
- unity3d中脚本生命周期(MonoBehaviour lifecycle)
最近在做一个小示例,发现类继承于MonoBehaviour的类,有很多个方法,于是乎必然要问出一个问题:这么多个方法,执行先后顺序是如何的呢?内部是如何进行管理的呢?于是在网上找了许多资料,发现了Ri ...
- SharePoint 软件边界及限制
摘自technet http://technet.microsoft.com/zh-cn/library/cc262787.aspx
- Apache HTTPServer与JBoss/Tomcat的整合与请求分发
http://www.blogjava.net/supercrsky/archive/2008/12/24/248143.html
- 使用SetWindowPos API函数移动窗口后,还需修改Delphi的属性值,以备下次使用,否则就会出问题(不是API不起作用,而是使用了错误的坐标值)
单独改变坐标的代码如下,可不断左移: procedure TForm1.Button1Click(Sender: TObject); begin SetWindowPos(panel1.Handle, ...
- [LeetCode#82]Remove Duplicates from Sorted Array II
Problem: Follow up for "Remove Duplicates":What if duplicates are allowed at most twice? F ...
- Linux Shell编程(8)——变量详解
不同与许多其他的编程语言,Bash不以"类型"来区分变量.本质上来说,Bash变量是字符串,但是根据环境的不同,Bash允许变量有整数计算和比较.其中的决定因素是变量的值是不是只含 ...
- 《University Calculus》-chaper8-无穷序列和无穷级数-p级数
Q:定义p级数有如下形式,讨论p级数的敛散性.(p>o) 我们以p = 1作为分界点,因为实践表明这个分界点是最优区分度的.那么下面我们进行分情况讨论. 在这之前,我们有必要先引入一个检验敛散性 ...
- poj2299
好吧,看到这个图片就知道是干什么的了,求逆序数- - 可以用线段树,貌似还可以用归并排序,这题应该是考的归并排序,毕竟是递归分治- - 基本上都忘了,再写一写试试吧. AC ///////////// ...
- 《Java 并发编程实战》读书笔记之二:图文讲述同步的另一个重要功能:内存可见性
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17288243 加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另 ...
- ionic2 干货
亲爱的程序员童鞋 分享干货啦 最近在研究ionic2 ,公司也在用ionic2 和typescript,angular2以及cordova做混编APP 我的博客随笔都是随性写的,做了某个功能就想分享一 ...