原创 Android內存優化雜談
原文出處:WeMobileDev(微信公衆號) Android內存優化是我們性能優化工作中比較重要的一環,這裏其實主要包括兩方面的工作: 1.優化RAM,即降低運行時內存。這裏的目的是防止程序發生OOM異常,以及降
原创 實現不同字體顏色的TextView
遇到的需求,mark一下: package com.chuck.recyclerviewdemo; import android.content.Context; import android.graphics.Canvas;
原创 View 中的dispatchTouchEvent,OnInterceptTouchEvent ,OnTouchEvent方法
在view 的點擊事件分發的過程中有三個非常重要的方法: dispatchTouchEvent() onInterceptTouchEvent() onTouchEvent() 先來認識一下這三個方法: dispatch
原创 Android事件分發與消費
之前寫過一篇Android 事件分發機制詳解 ,感覺比較亂,這裏再總結一下。網上已經有很多前輩分析過源碼,大家可以參考,我這裏儘量不做過多的源碼分析,僅僅從流程上分析。 0x01 基礎部分 事件分發和消費我們主要涉及
原创 ButterKnife源碼剖析
轉載請註明:http://blog.csdn.net/chenkai19920410/article/details/51020151 ButterKnife是Jake Wharton大神寫開源框架。項目託管地址:
原创 Gradle for Android系列之四 依賴包管理
在Gradle for Android系列之二 build.gradle文件 中已經初步介紹過依賴包。爲什麼我們這裏還要在專門介紹呢,因爲我們在項目中往往需要用到各種依賴方式,對我們來說很重要。掌握Gradle依賴包管理,可以讓我們事
原创 Android Frameworks系列(二) 徹底弄懂startActivity
在Android Frameworks系列(一) startService啓動 一文中我們介紹了startService啓動的過程,和startService一樣,startActivity也是以ActivityManagerServ
原创 手把手教你在JCenter發佈開源庫
當你自己造好了輪子,想讓其他人也能方便的使用到,就好像其他開源庫一樣,在AndroidStudio中一句話引用: dependencies { compile 'chuck.WheelItemView:library:
原创 Retrofit2源碼解析
最近項目將網絡框架換成Retrofit2.0.2,文中說的Retrofit都是指的Retrofit2這裏要說明一下,畢竟和Retrofit1差別還是蠻大的,結合Okhttp,RxJava還是比較好用的,網上有很多前輩介紹過使用方法,本
原创 Android Frameworks系列(一) startService啓動
之前寫過一篇從AIDL看Android跨進程通信 從Java層次去分析AIDL運行的原理,當時主要是爲了學習Binder機制而寫的,但是Binder機制比較複雜,打算過段時間單獨的寫一篇來分析。本篇文章分析startService的啓
原创 Android開發中的代理模式
上一篇文章Android開發中單例模式寫法與可能遇到的坑講到了單例模式的一般寫法,本篇繼續總結一下Android(Java)中比較常用的代理模式。和單例模式一樣,代理模式也是經常使用到的,使用過Spring的小夥伴,應該比較清楚,其A
原创 Gradle for Android系列之一 Gradle基礎
project 和task project和task是Gradle中最重要的兩個概念。每一次構建,都至少包括一個project,每一個項目又包括至少一個task。相信大家都對Android Studio生成的項目結構已經很熟悉了
原创 RxJava(RxAndroid)線程切換機制
自從項目中使用RxJava以來,可以很方便的切換線程。至於是怎麼實現的,一直沒有深入的研究過!本篇文章就是分析RxJava的線程模型。 RxJava基本使用 先上一個平時使用RxJava切換線程的例子: Obser
原创 Gradle for Android系列之五 多渠道打包
我們知道,很多的app需要發佈在不同的應用商店中,但是各應用商店對上架的要求有時候又不相同,也就意味着我們需要針對不同的渠道,構建不同的渠道包,如果手動做這些事情,會比較繁瑣,那麼使用Gradle會方便很多!本篇在前文的基礎上介紹一下
原创 自己動手生成Android Apk
本文僅做學習使用,比較簡單,沒有實際項目複雜。 掌握Apk生成的過程,對於我們是非常重要的。而該過程平時都是由IDE自動幫我們完成的。IDE可以給我們帶來很大的便利,但是也是一把雙刃劍,有時候會讓我們忽視一些重要的實現步驟。所以