Android 應用啓動速度優化之 Systrace 的使用html
Android 應用啓動速度優化方式有不少方法,不過在優化以前,須要找到應用啓動速度的瓶頸,找到關鍵點以後,再去優化,則能夠達到事半功倍的效果。 Google 提供了不少 Debug 工具來幫助咱們優化應用,這其中就包括 Systrace 工具。android
Android View.OnTouchListener 的子類git
以下是幾個實現了 OnTouchListener 接口的子類,OnTouchListener 咱們是再熟悉不過了,在 Hello World 開始就接觸了,但在 Support V4 中還有它的 3 個子類咱們平時可能使用的較少但就其功能而言仍是對咱們頗有幫助的。github
Activity是安卓上最聰明的設計之一,優秀的內存管理讓多任務完美運行在最流行的操做系統之上。並非讓Activity在屏幕上啓動就完事了,其啓動方式也是須要關注的。這個話題的內容不少,其中很重要的就是啓動模式(launchMode)。這也是咱們這篇博客要討論的內容。android-studio
面向對象設計六大基本原則-以Volley爲例 (@開發技術前線)app
在工做初期,咱們可能會常常會有這樣的感受,本身的代碼接口設計混亂、代碼耦合較爲嚴重、一個類的代碼過多等等,本身回頭看的時候都以爲汗顏。再看那些知名的開源庫,它們大多有着整潔的代碼、清晰簡單的接口、職責單一的類,這個時候咱們一般會捶胸頓足而感嘆:何時老夫才能寫出這樣的代碼!框架
目前網上和市面上關於Android源碼的博客和書籍挺多的,其中偏向對Android源碼的分析的比較多,實踐性強的相對比較少,個人目標是更多的分享一些實踐性強的文章,我在學習一個新的領域時,總會有不少不少的困惑,我喜歡帶着這些困惑去學習和實踐,我相信只有把各類疑問和困惑都解決了,纔算是真正的入門了工具
讀Android 5.X源碼系列之 - 再看Log日誌系統模塊
Android應用開發調試離不開各類log日誌信息的幫助,通常狀況下log日誌能夠幫你快速定位問題出錯的先後位置,除了掌握基本的Java層使用log api,今天來看一下Android Log框架的構成。
React Native概述:背景、規劃和風險 (@泡在網上的日子)
Facebook在3.26 F8大會上開源了React Native,本文是對React Native的技術背景、規劃和風險的概述。看得比較倉促,問題處請直接回復。
詳解Dagger2 (@開發技術前線)
爲何使用依賴注入?首先咱們須要知道,人們在很長的一段時間裏都是利用控制反轉原則規定:應用程序的流程取決於在程序運行時對象圖的創建。經過抽象定義的對象交互能夠實現這樣的動態流程。而使用依賴注入技術或者服務定位器即可以完成運行時綁定。
今天咱們聊一聊安卓中保存和恢復view狀態的問題。我刻意強調View狀態是由於我發現這個過程要比保存 Activity 和 Fragment狀態稍微複雜,還有一個緣由是由於網上有太多「重複造的輪子」(有時仍是奇醜無比的輪子)
在使用ActionBar的時候,一堆的問題:這個文字能不能定製,位置能不能改變,圖標的間距怎麼控制神馬的,由此暴露出了ActionBar設計的不靈活。在上一篇中,咱們只是簡單使用了AppCompatActivity,他使用的仍然是ActionBar 官方在21之後提供了ToolBar。Toolbar之因此靈活,是由於它其實就是一個ViewGroup,咱們在使用的時候和普通的組件同樣,在佈局文件中聲明。
隨着Material Design的普及,不少開發人員都會面臨App的Material適配。若是你的App不僅是針對5.0以上設備的話(多數狀況也必須作兼容), 那麼下面的經驗總結將會對你有所幫助。固然,有些公司的App不會改爲Material Design,但若是你之前使用AppCompatV7的話,升級到21後,你必然面臨和之前不同的使用方式,瞭解新的方式也是必須的。
搜索下如何發佈 Android 項目的信息,大部分都會找到這篇文章 Publishing Gradle Android Library to jCenter Repository,中文的指引能夠看使用Gradle發佈項目到JCenter倉庫。不過,若是按照這些文章提供的 build.gradle,可能還會遇到一些坑。
最近出現的 React Native 再次讓跨平臺移動端開發這個話題火起來了,曾經你們覺得在手機上能夠像桌面那樣經過 Web 技術來實現跨平臺開發,卻大多由於性能或功能問題而放棄,不得不針對不一樣平臺開發多個版本。但這並無阻止人們對跨平臺開發技術的探索,畢竟誰不想下降開發成本,一次編寫就到處運行呢?除了 React Native,這幾年還出現過許多其它解決方案,本文我將會對這些方案進行技術分析,供感興趣的讀者參考。
擴展的RecyclerView,能夠設置頭/底部,Item點擊/長按監聽的recyclerView。可利用ExStaggeredGridLayoutManager給瀑布流設置頭/底,利用DividerGridItemDecoration或DividerItemDecoration來添加分割線,可利用OnRecyclerViewScrollListener監聽滑動到頂部、底部的事件,還能夠監聽滑動的距離
模仿Twitter iOS客戶端的下拉封面模糊效果。
多邊形的ImageView。
有一個堆棧效果的自定義View。
很讚的動畫交互效果。
輕鬆爲RecyclerView添加頭部,調用簡單的代碼就能夠爲LinearLayoutManager,GridLayoutManager ,StaggeredGridLayoutManager佈局的RecyclerView添加header。
水平效果的View堆棧效果。
圖片能夠自動移動的ImageView。
經過封裝BaseAdapter和RecyclerView.Adapter獲得的通用的,簡易的Adapter對象。
DanmakuFlameMaster是Android上最好的開源彈幕引擎.
This release contains only bug fixes:
兼容性和操控體驗方面最好的安卓模擬器。
錘子科技視覺設計總監羅子雄在重慶TEDx上的演講視頻。
除遊戲以外的 Android 應用一般使用 Java 語言來開發,而谷歌內部的一個團隊正在探索全新的應用開發方式。他們利用了谷歌自主的網頁開發語言 Dart 來開發 Android 應用。在 Android 項目中使用的 Dart 並未被稱做 「Android 版 Dar t」,而是有了一個新名字「 Sky 」。這幫助他們專一於速度,並能夠與網頁進行深度整合。
谷歌上一代設計語言是卡片設計,而這一代做爲卡片的延伸,Material Design 以紙片與墨水做爲靈感,由紙片與墨水組成的設計隱喻貫穿整個material design 的全部細節,動畫設計也不例外。
咱們曾經在去年底 Gmail 訪問異常和上個月的 Google Play VP 採訪中提到,Google Play Service 部分入華的計劃確實存在,只剩下時間問題。Google 中國相關的工做人員也曾經告訴 36Kr,Sundar Pichai 曾經在今年的 MWC 期間表達過 Play 入華的意願,不過須要注意的是:Google Play(Services) 此前從未正式在中國區開戰業務,因此談不上「迴歸」,稱爲「進入」中國會更合適。