www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > > 充電吧
[導讀]UniversalImageLoaderAndroid SDK的特點是開放、簡單、基礎,你可以在上面自由創(chuàng)造,但現(xiàn)成的東西就很少了,比如剛開始接觸Android的時筆者驚訝于ImageView竟然不能

UniversalImageLoader

Android SDK的特點是開放、簡單、基礎,你可以在上面自由創(chuàng)造,但現(xiàn)成的東西就很少了,比如剛開始接觸Android的時筆者驚訝于ImageView竟然不能設置來源一張網絡圖片甚至SD卡上的圖片作為來源,對于習慣了前端開發(fā)的人這確實難以接收,后來理解到圖片的下載、緩存、解碼、錯誤處理、縮放裁剪這里面每個環(huán)節(jié)都會有很多種情況,如果單純地設置一個src屬性就將其靈活性局限了,此外ImageView畢竟是一個視圖類,做一些I/O、耗資源的粗活還得自己管理線程也不合適,也就接受了這種“自己動手豐衣足食”的理念。

所以在之前的項目開發(fā)中真的就自己動手實現(xiàn)了一個叫RemoteImageDownloader的類,其中歷經曲折真是不堪回首,既考慮到相同URL同時只下載一次、緩存、錯誤和重試機制,又要考慮到多個請求時如何管理隊列,更痛苦的是還得防止同時解碼多個圖片、必要時downsample以防內存超過限制……在整個開發(fā)過程中不斷為其添磚加瓦,直到完善后才發(fā)現(xiàn)Github上有一款叫做UniversalImageLoader的庫,真是相見恨晚、淚流滿面啊,幾乎又做了一個RemoteImageDownloader,雖然對于項目來說它更符合應用場景,但讓項目來適應這個穩(wěn)定、專人維護且被眾多主流應用使用的庫顯然是更明智的選擇。

參考地址:https://github.com/nostra13/Android-Universal-Image-Loader

Android Asynchronous Http Client

如果你開發(fā)的項目需要調用Restful API,那一定離不了異步HTTP請求、持久化Cookie存儲、處理多文件上傳、GZIP壓縮和各種I/O錯誤處理。異步請求通過AsyncTask可以解決,但線程不好管理,所以更常見的是Thread+Handler的模式,通過定義不同的Message來區(qū)分處理成功請求、連接超時、無法連接到網絡、服務器繁忙,在RequestHeader中自動加上GzipHeader,同時給OutputSteram自動套上GzipOutputStream,根據(jù)參數(shù)類型去組織Multipart或普通POST、用Preference去固化存儲Cookie等等,將它們全部封裝在一起,筆者就打造了一個名為ApiRequest類HTTP處理類,也是隨著項目的進展不斷完善添磚加瓦,包括引入Activity Based的概念以便在finish activity之后就自動關閉連接等特性。再后來發(fā)生的事情想必大家都知道了:有一天遇到了Android Asynchronous Http Client,這款Instagram、Pinterest都在用的庫,再一次讓我欲哭無淚,因為ApiRequest里特性功能,幾乎都能找到。

參考地址:https://github.com/loopj/android-async-http

Pull To Refresh

下拉刷新,最具移動特色的交互方式。如果僅僅局限于Pull To Refresh Listview那就太狹隘了,事實上Webview、ScrollView、GridView都是可以下拉刷新的,這就是Android Pull-to-refresh庫給我們帶來的UI組件,它在github上收獲了2700顆Star。這款插件筆者是直接拿來就用了,沒有重蹈覆轍(目測就算做來了體驗也不好),但還是在這里推薦給大家,因為確實太好用了。

參考地址:https://github.com/chrisbanes/Android-PullToRefresh

Gifview

Android的ImageView是沒法顯示Gif圖片的,要顯示動圖還是略費周折。為了顯示動圖,筆者繼承了ImageView,加了setGifFile方法,通過Movie來解析Gif圖片,并且不斷地重繪、繪制時計算時間以調整幀數(shù)從而實現(xiàn)動圖的功能,這倒沒什么難的,大伙兒貌似都這么干的。但是,后來在測試的時候發(fā)現(xiàn)很多在很多機器上Movie解析Gif都失敗了,原因不詳也沒有深究,就在網上找到了Gifview,效果很棒,雖然有些耗內存造成gc時卡頓,但能顯示動圖已經滿足了。值得一提的是,Gifview的作者是中國的。

參考地址:https://code.google.com/p/gifview

AndroidTouchGallery

Pinch to zoom、flip to navigate,如果你的項目包含Gallery、這些特性是必不可少的,這方面的庫倒是不少,筆者用的AndroidTouchGallery感覺就很實用、體驗也不錯,不過通用性倒不是太好,可能要做一些修改才能與你的項目融合,比如將Gifview、ImageLoader以及HttpClient相關的都整合進去,也需要費些心思的。

參考地址:https://github.com/Dreddik/AndroidTouchGallery

Android Support v4

這個Google官方的庫真是活力十足,ViewPager、Fragment等新特性也能在ICS以下SDK使用了,省了很多力氣。


本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

其他電腦(比如安卓手機/平板電腦)的屏幕壞了,你可能想在安排維修之前緊急訪問一些東西。你可以使用android的USB OTG功能(是的,幾乎每個android都支持這個功能,你可以將鼠標和鍵盤連接到它)。

關鍵字: USB 鼠標 Android 樹莓派

Google 宣布與中國 AR 科技公司 XREAL 達成深度戰(zhàn)略合作,聯(lián)合推出全球首款專為 Android XR 平臺打造的旗艦級 AR 眼鏡 Project Aura。

關鍵字: Google XREAL Android XR眼鏡 AR

在能源數(shù)字化轉型加速推進的背景下,電力鴻蒙操作系統(tǒng)憑借其分布式架構、統(tǒng)一通信標準和跨設備協(xié)同能力,成為構建智能電網和能源互聯(lián)網的核心技術底座。對于開發(fā)者而言,選擇合適的工具鏈不僅能提升開發(fā)效率,還能保障系統(tǒng)穩(wěn)定性與安全性...

關鍵字: 電力鴻蒙 開發(fā)工具

電力鴻蒙(OpenHarmony for Power)憑借其分布式軟總線、輕量化內核及電力行業(yè)深度適配能力,成為構建智能電網、新能源管理、綜合能源服務等場景的核心技術底座。開發(fā)者通過掌握其官方開發(fā)工具DevEco Stu...

關鍵字: 電力鴻蒙 開發(fā)工具

在能源互聯(lián)網與新型電力系統(tǒng)建設的背景下,電力鴻蒙(OpenHarmony for Power)作為面向電力行業(yè)的物聯(lián)操作系統(tǒng),通過分布式軟總線、輕量化設備管理等技術,重構了電力設備的開發(fā)范式。其開發(fā)工具鏈以DevEco...

關鍵字: 電力鴻蒙 開發(fā)工具

繼停止維護AOSP開源項目后,谷歌母公司Alphabet近日被曝在其安卓系統(tǒng)(Android)、Pixel手機以及Chrome瀏覽器等部門裁員數(shù)百人。這一舉措引發(fā)了業(yè)界的廣泛關注,也引發(fā)了對谷歌未來業(yè)務布局的諸多猜測。

關鍵字: 谷歌 AOSP Android 裁員

在本教程中,我們將使用Capacitor 6、Angular和TypeScript構建一個Android應用程序,該應用程序通過串行端口連接到BleuIO USB加密狗。該應用程序允許用戶直接從Android設備發(fā)送和接...

關鍵字: Android USB 電容器 BLE設備

早前媒體報道谷歌將停止維護Android開源項目(AOSP),將Android開發(fā)全面轉向內部閉源分支,目前這一消息已經得到谷歌官方確認。

關鍵字: 谷歌 Android 開源

本項目演示了如何通過OTG (on - go) USB在Android設備上使用BleuIO USB加密狗作為串行端口。使用電容器6和@adeunis/電容器-串行插件,我們建立串行連接,發(fā)送AT命令,并實時讀取響應。該...

關鍵字: 電容器 Android 傳感器 微控制器 嵌入式系統(tǒng)
關閉