開源的Android開發框架-------PowerFramework使用心得(一)總體介紹,.netframework開源
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