原创 Android學習之Drawable(一)

Drawable有很多種,它們表示一種圖像概念,但它們不全是圖片。Drawable是什麼呢?下面是Google Android API中的定義: A Drawable is a general abstraction for

原创 Android圖片緩存及內存溢出

Android 圖片三級緩存 內存緩存,優先加載,速度最快 本地緩存,次優先 網絡緩存,最後加載,速度慢,消耗流量 UI ↓ ↑ 內存緩存 ↓ ↑ 本地緩存 ↓ ↑ 網絡緩存 內存溢出OOM Andro

原创 Android 屏幕適配

Android屏幕適配主要有五種方法:圖片適配、佈局適配、尺寸適配、權重適配、代碼適配。前兩種不太常用,後三種用的較多。 圖片適配 開啓4種分辨率的模擬器 在drawable的多個目錄下放置內容不同但命名相同的圖片 運行程序

原创 Android中的一些基礎知識(一)

翻譯自這裏,並做了部分修改。 什麼是Android? Android是爲移動設備提供的軟件,它包括操作系統、中間件、和一些關鍵的應用程序。應用程序執行它自己的進程和在Dalvik虛擬機中的實例。 Android應用程序體系

原创 Android中的一些基礎知識(二)

這幾天在回顧Android的基礎知識,就把一些常見的知識點整理一下,以後忘了也可以翻出來看一看。 簡單介紹一下Activity的生命週期 在API文檔中對生命週期回調的函數描述的很詳細,這裏我只是翻譯了一下。 onCreate:當

原创 Android創建窗口(一)創建應用窗口

所謂的窗口(Window)就是一個顯示在手機屏幕上可視化視圖的一片區域。在Android中窗口是一個抽象的概念,每一個Activity就對應着一個窗口,而所有的窗口都是由視圖(View)來呈現,而我們知道View構成的一個樹形結構的視圖就

原创 Android中圖片處理相關問題

在Android的開發中,我們經常回去處理一些圖片相關的問題,比如當加載圖片到內存中產生的OOM(OutOfMemory)異常、圖片加載到內存中佔多大內存的問題、jpg png兩種常見的圖片的原理及區別。 圖片加載到內存所佔內存大小的問

原创 設置狀態欄透明

什麼是透明狀態欄 android4.4後的版本可以讓最上方的狀態欄透明化,效果如下圖 我們可以通過代碼來修改,具體代碼如下 @Override protected void onCreate(Bundle saved

原创 Android中使用NDK

首先用Android Studio下載NDK 這個比較簡單,就不多說了 1.寫調用jni的Java代碼 新建一個JniUtils類 public class JniUtils { static { Syste

原创 Android學習之DragEvent

關於DragEvent Google Android API中是這麼說的 Represents an event that is sent out by the system at various times during a drag

原创 AspectJ基本用法

參考:深入理解Android之AOP AOP雖然是方法論,但就好像OOP中的Java一樣,一些先行者也開發了一套語言來支持AOP。目前用得比較火的就是AspectJ了,它是一種幾乎和Java完全一樣的語言,而且完全兼容Java(Aspec

原创 阿里Android一面(校招)

4.8號晚上8點多接到了阿里一面的電話,面試官人很好,和我聊了半個多小時。我面的是無線事業部,就是做淘寶客戶端的那個部門。面試問的都很基礎,剛開始問了hashmap和快速排序。接着就是問Android相關的問題。因爲數據結構和算法是基礎,

原创 Android動態加載jar

之前,被人問到Android如何動態加載jar,當時不知道,一臉蒙B,就研究了一下。 首先需要創建一個jar包,不太清楚怎麼樣用Android studio創建jar包的同學可以看一下我的另一篇博客Android Studio導出Ja

原创 JVM垃圾收集器

垃圾標記策略 引用計數算法:給對象添加一個引用計數器,當有地方引用時,計數器就加一;當引用消失時,計數器減一。當引用爲0時,對象就會被回收。引用計數算法實現簡單,判定效率很高,在大多數情況下是一個不錯的算法,但這種算法有一種缺陷,如下面

原创 viewpager + fragment 的坑

當viewpager所依賴的activity被回收後,再次重建的時候,獲取的viewpager中的fragment爲空,下面是代碼: 創建fragment的代碼 public class MainActivity{ ...