原创 第十三章-綜合技術(CrashHandler、MultiDex、動態加載、反編譯)

一、使用CrashHandler來獲取應用的crash Android應用不可避免地會發生crash,也稱之爲崩潰,無論你的程序寫得有多麼完美,總是無法完全避免crash的發生,可能是由於Andriod系統底層的bug,也可能是由

原创 第十二章-實現一個ImageLoader

一、ImageLoader的實現功能介紹 前面瞭解了Bitmap的高效加載方式、LruCache以及DiskLruCache,現在我們來實現一個優秀的ImageLoader。 一個優秀的ImageLoader應該具備如下功能:

原创 第十一章-Android線程和線程池(AsyncTask、HandlerThread、IntentService)

Android中的線程形態 本節將對Android中的線程形態做一個全面的介紹,除了傳統的Thread以外,還包含了AsyncTask,HandlerThread以及IntentService,這三者的底層實現也是線程,但是他們

原创 第十二章-Bitmap的加載和Cache(緩存策略、LruCache、DiskLruCache)

本章的主題是Bitmap的加載和Cache,主要包含三個方面的內容。首先講述如何有效的加載一個Bitmap,這是一個很有意義的話題,由於Bitmap的特殊性以及Android對單個應用所施加的內存限制,比如16MB,這就導致加載B

原创 第九章-四大組件的工作過程(ContentProvider的工作過程-基於Android8.1源碼)

一、使用ContentProvider示例: 1、在一個單獨的app(B)中定義個MyContentProvider package com.example.provider; import android.content.Co

原创 第五章-RemoteViews內部機制

一、RemoteViews內部機制 RemoteViews的作用在其他進程中顯示並且更新View的界面,爲了更好地理解它的內部機制,我們來看一下他的主要功能。 首先我們看一下他的構造方法,這裏介紹一個最常用的構造方法 publ

原创 第九章-四大組件的工作過程(BroadcastReceiver的工作過程-基於Android8.1源碼)

本章介紹BroadcastReceiver的工作過程,主要包含兩方面的內容,一個是廣播的註冊過程,另一個是廣播的發送和接收過程。 一、BroadcastReceiver的使用 這裏簡單回顧下廣播的使用方法: class My

原创 第四章-View的工作原理(自定義View)

一、自定義View的分類 二、自定義View的須知 三、自定義View的實例 直接繼承View 這個view處理了一些常見的問題,是一個比較規範的示例。 支持xml配置wrap_parent 支持padding 支持xml自

原创 第五章-RemoteViews應用

一、RemoteViews的應用 RemoteViews在實際的開發中,主要用在通知欄和桌面小部件的開發過程中。通知欄每個人都不陌生,主要是通過NotificationManager的notify方法去實現的,它除了默認效果外,

原创 第三章-View事件體系(事件分發機制、滑動衝突解決)

一、View的事件分發 1、點擊事件的傳遞規則 在介紹點擊事件的傳遞規則之前,首先明白分析的對象就是MotionEvent,即點擊事件。所謂點擊事件的事件分發,其實就是對MotionEvent事件的分發過程,即當一個MoonEv

原创 android使用技巧及踩過的坑

Android學習一些小技巧及踩過的坑: 1、jsoup包沒有,顯示紅色錯誤: 在網上下載jsoup包,放到工程目錄libs下面即可 2、打開網址提示 net::ERR_CACHE_MISS 錯誤(沒有網絡訪問權限): 在And

原创 python解析xml轉化爲csv

1、測試的xml(test.xml) <?xml version="1.0" encoding="UTF-8"?> <BS_TCX> <ServiceArea>area</ServiceArea> <Version>1D</Ver

原创 Java設計模式6-結構型-裝飾模式

裝飾模式就是給一個對象增加一些新的功能,而且是動態的,要求裝飾對象和被裝飾對象實現同一個接口,裝飾對象持有被裝飾對象的實例 1、代碼演示 Source類是被裝飾類,Decorator類是一個裝飾類,可以爲Source類動態的添加一

原创 Java設計模式5-結構型-適配器模式

適配器模式是各種模式的起源 適配器模式將某個類的接口轉換成客戶端期望的另一個接口表示,目的是消除由於接口不匹配所造成的類的兼容性問題。 核心思想就是:有一個Source類,擁有一個方法,待適配,目標接口是Targetable,

原创 Android學習筆記19-內存泄漏分析

今天來簡單的介紹下怎麼分析android應用的內存泄漏問題。 首先我們要明白爲什麼會有內存泄漏,主要有2種情況: a.全局進程(process-global)的static變量。這個無視應用的狀態,持有Activity的