Android技術提升

weixin_34208283發表於2018-02-02

寫給 Android 開發者的混淆使用手冊

點選開啟連結 毫無疑問,混淆是打包過程中最重要的流程之一,在沒有特殊原因的情況下,所有 app 都應該開啟混淆。 首先,這裡說的的混淆其實是包括了程式碼壓縮、程式碼混淆以及資源壓縮等的優化過程。依靠 ProGuard,混淆流程將主專案以及依賴庫中未被使用的類、類成員、方法、屬性移除,這有助於規避 64K 方法數的瓶頸;同時,將類、類成員、方法重新命名為無意義的簡短名稱,增加


有贊 App 模組化實戰經驗總結


為了應對團隊壯大之後的開發模式,我們必須要對業務進行隔離,同時沉澱出通用元件,完善移動開發的基礎設施。


重要 - 作為 Android 開發者必須瞭解的 Gradle 知識


本文中我們將一步一步介紹 Android 工程中用到的 gradle 檔案及其背後的原理


Android 記憶體管理機制


Android 系統是基於 Linux 2.6 核心開發的開源作業系統,而 linux 系統的記憶體管理有其獨特的動態儲存管理機制。不過 Android 系統對 Linux 的記憶體管理機制進行了優化,Linux 系統會在程式活動停止後就結束該程式,而 Android 把這些程式都保留在記憶體中,直到系統需要更多記憶體為止。這些保留在記憶體中的程式通常情況下不會影響整體系統的執行速度,並且當使用者再次啟用這些程式時,提升了程式的啟動速度。


使用 Retrofit 和 Okhttp 實現網路快取。無網讀快取,有網根據過期時間重新請求


使用 Retrofit 和 Okhttp 實現網路快取。無網讀快取,有網根據過期時間重新請求


APK 瘦身記,如何實現高達 53% 的壓縮效果


APK 是 Android 系統安裝包的檔案格式,關於這個話題其實是一個老生常談的題目,不論是公司內部,還是外部網路,前人前輩已經總結出很多方法和規律。不過隨著移動端技術近兩年的飛速發展,一些新的思維方式和優化方法也逐漸湧現和成熟起來。


Android 開發人員不得不收集的程式碼 (持續更新中)


做這份整理是想把它作為 Android 開發的小字典,當遇到一些瑣碎問題時,不用再面向百度或者谷歌查詢 API 的使用,費時費力,這裡有的話,大家儘管擼走;同時也希望它能逐日壯大起來,期待大家的 Star 和完善,當然我也會一直更新發布版本和日誌,為了方便大家匯入,現已上傳 jcenter;其中很多程式碼也是匯四方之精華,謝謝前輩們的提供,當然最終還是要通過單元測試的,如有錯誤,請及時告之。


Android快速實現地圖功能(不僅快!而且小!)


本文為 Marno 原創,轉載必須保留出處! 公眾號【 aMarno 】,關注後回覆 RN 加入交流群 React Native 優秀開源專案大全:http://www.marno.cn 一、前言 本文旨在提供一個解決思路,不僅適用於新增地圖這一種場景。還有更多的場景可以用到,…


覺得自己程式碼寫得不夠好?那就用 Android 程式碼優化工具吧~


  1. 前言: 在我們平時專案開發中, 經常會寫一些不嚴謹的程式碼或者一些比較低階的錯誤程式碼, 但是這些錯誤往往很難被發現, 這樣就導致了我們的專案中會隱藏了很多影響效能甚至是導致閃退的錯誤程式碼, 於是許多響應的檢測工具就出現了. 在這裡我就介紹一下我比較常用的幾個檢測工具吧 專案 DEMO 原始碼…


    Android 架構合集(請關注github,後續更新)

安卓架構,最全文章合集,請關注github更新


乾貨!我開發 Android 是如何介面設計的


乾貨!我開發 Android 是如何介面設計的


Android可伸縮佈局-FlexboxLayout(支援RecyclerView整合)


1 . 前言 前幾天看到Google官方的部落格介紹了Google開源的一個強大的佈局-FlexboxLayout,看見第一眼我心裡的想法是,臥槽,Android 居然有這麼一個強大的佈局。作為一個有好奇心的工程獅,當然第一時間就去試了試手,效果非常贊,因此這篇文章就介紹一下它的…


阿里宣佈 Atlas 開源 有效提升大規模團隊移動開發效率


Atlas 由阿里巴巴移動團隊自研,以容器化思路解決大規模團隊協作問題,實現並行開發、快速迭代和動態部署,適用於 Android 4.x 以上系統版本的大小型 App 開發。
Atlas 特別適用於大規模團隊的協同開發。通過提供元件化、動態性、解耦化的支援,Atlas 能夠實現每個業務在開發階段獨立編譯、獨立除錯、獨立執行,最後再以一個元件的形式整合到客戶端中,每個業務之間並行開發互不影響。此外,還具備客戶端動態發版和快速修復的能力。


立即停止 Android Studio 編譯


新技巧 get!!一個命令解決 Android Studio 編譯難題!


私人珍藏的 Chrome 外掛,吐血推薦


提升開發效率必備!


快來看看 Google 出品的 Protocol Buffer,別隻會用 Json 和 XML 了


本文主要介紹 Protocol Buffer 的語法、安裝 & 在 Android 平臺上的使用


震驚!如此多的 Android 開發技巧!


非常棒的 Android 開發技巧


Lottie 的使用及原理淺析


Lottie 的使用及原理淺析


【工具類】Android 最有效的隱藏軟鍵盤方法


原文發表於:http://blog.csdn.net/qq_27485935 , 大家沒事可以去逛逛 (ง •̀_•́)ง 前言 在平時的 App 開發中, 免不了會遇到需要開發者隱藏軟鍵盤的情況, 比如當在多個輸入框填入個人基本資訊, 最後有個儲存按鈕, 點選即可將個人基本信…


【設計模式 Android】設計模式六大原則


有幾天沒發文章了,一直有人在公眾號問我關於觀察者模式的問題,所以我決定抽時間寫一寫關於設計模式的內容。今天先介紹一些基礎的東西。 六大原則 我以前在面試別的人的時候,總是喜歡聊聊設計模式,因為總感覺功能部分都能寫出來,但是程式碼質量和程式碼設計的東西熟練,才能更好地跟團隊配合,方便…


這互動炸了:餓了麼是怎麼讓Image變成詳情頁的


晚上叫外賣,開啟餓了麼,發現推了一個版本,更新以後,點開了個雞腿,哇,互動炫炸了。 本文同步自wing的地方酒館 不過還是有槽點。我是無意中才發現可以左右滑動的。這。。。你不告訴我,我怎麼知道左右可以滑。 https://github.com/githubwing/ZoomHe


原生Android也能做Web開發了


大家好,今天跟大家介紹一個讓原生Android也可以做Web開發的開源專案——AndServer。 開源地址:https://github.com/yanzhenjie/AndServer AndServer是一個Android端的Web伺服器,類似Apache或者Tomcat…


Material Design之 AppbarLayout 開發實踐總結


前言 本文同步釋出到我的簡書專欄Material Design之 AppbarLayout 開發實踐總結 前一篇文章是Material Design 系列的第一篇文章,講了Toolbar 的使用,《Material Design 之 Toolbar 開發實踐總結》,還沒看過的同…


Android 元件化之通訊


元件化最直接的表現形式就是工程中包含了多個業務 Module,程式碼要解耦,但是業務間要解耦幾乎是不可能的,於是就要涉及到業務間的通訊,表現在程式碼上就是 Module 間通訊。


直接拿去用!每個App都會用到的LoadingLayout


前言 專案裡都會遇到幾種頁面,分別為載入中、無網路、無資料、出錯四種情況,經常要使用,所以封成庫引用了,方便使用,順便分享出來。先看一下效果: 原理比較簡單,繼承FrameLayout,在xml渲染完成後,加上載入中、無網路、無資料、出錯四個頁面,根據需要控制顯示哪一層,花了些…


影像識別在測試中的應用


也許我們使用過 Uiautomator 編寫過自動化測試指令碼,也許我們也使用過 Monkey 來測試過應用的穩定性。但在使用過程中總覺得有或多或小的問題,用 Uiautomator 寫指令碼,總覺得有時候控制元件沒法識別;用 Monkey 來進行穩定性測試,總覺得沒法復現問題…… 本文將使用一個新的角度(影像識別)來看待這型別的測試問題。增加一種影像識別的方法來補充 Uiautomator 與 Monkey 的限制。本文僅作為 “拋磚” 篇把影像應用到測試這個思路引出來,希望能引出更多的 “玉” 能參與其中一起研究。


Android 開發人員不得不收集的程式碼 (不斷更新)


Android 開發人員不得不收集的程式碼 (不斷更新)


一些快速提高 Android 開發的指令碼與技巧(終端篇)


正所謂 “工欲善其事必先利其器”, 一個好的工具或者技巧能讓提升工作效率,起到事半功倍的效果。在這裡斗膽列出一些竊以為一些可能快速提高 Android 日常開發的指令碼,希望可以為大家提供一些好的工具,有幫助的思路。


錄音和播放,輕量到只有一個管理類


鑑於專案需要,封裝了一個錄音和播放的管理類,分享出來給大家,有需要的直接拿去用! 有圖有真相: 實現功能: 實現錄音功能,提供暫停、繼續切換,並且監聽音量大小以波浪線呈現出現 實現播放功能,播放實現幀動畫 用法1.錄音 VoiceManage mVoiceManage =Voi…


詳細解析 RxAndroid 的使用方式


RxAndroid 是 RxJava 的擴充套件, 優雅地處理非同步請求. RxAndroid 配合 Lambda 表示式, 精簡處理回撥, 使程式更具有可讀性. 本文詳細介紹使用方法.
歡迎 Follow 我的 GitHub: https://github.com/SpikeKing


Android6.0 許可權封裝


許可權 Android6.0


Android 系統中,那些能大幅提高工作效率的 API 彙總(持續更新中...)


前言 “條條大路通羅馬。” 工作中,實現某個需求的方式往往不是唯一的,這些不同實現方式不僅表現在程式碼質量上,還影響著我們的工作效率。就像,在 Android 系統中,總有那麼一些鮮為人知的 API 能夠減少我們很多零碎的工作量。於是,就想憑著一些經驗,整理一些常用的,找個地方歸納…


Android 原始碼解析 Handler 系列第(三)篇 --- 深入瞭解 Android 的訊息機制


Android 的訊息機制我覺得是每一個弄 Android 開發的人都要弄懂得問題,也有很多人對它進行研究,Android 的訊息機制的重要性不強調,但是覺得自己對 Android 的訊息機制瞭解不深刻,所以決定深入原始碼,寫下五篇部落格以記之。因為 Message 全域性池和 ThreadLocal 對 Android 的訊息機制理解很重要,附上前兩篇的部落格地址。
Android 原始碼解析 Handler 系列第(一)篇 --- Message 全域性池
Android 原始碼解析 Handler 系列第(二)篇 --- ThreadLocal 詳解


Android 實現底部對話方塊


Android 實現底部對話方塊

相關文章