原创 Android設計模式1--原型模式

1. 定義 原型模式:用原型實例指定創建對象的種類,並且通過拷貝這些原型創建新的對象。   2. 使用場景 資源優化場景:類初始化需要消化非常多的資源,這個資源包括數據、硬件資源等。 性能和安全要求的場景:通過new產生一個對象需要非常

原创 Android網絡基礎3——HTTP協議原理

1. HTTP簡介 HTTP協議用於客戶端與服務器之間的通信,在通信線路兩端,必定一端是客戶端,另一端是服務器。 注意:客戶端與服務器的角色不是固定的,一端充當客戶端,也可能在某次請求中充當服務器,這取決與請求的發起端。HTTP協議屬於應

原创 Android網絡基礎2——TCP協議的三次握手和四次揮手

HTTP協議用於客戶端與服務器之間的通信,在通信線路兩端,必定一端是客戶端,另一端是服務器。HTTP協議屬於應用層,建立在傳輸層協議TCP之上。也就是說,客戶端與服務器通信之前要建立TCP連接,之後發送HTTP請求與接收HTTP響應都是通

原创 Android錯誤碼轉換

Android程序員和後天交互時,後臺會返回數據或錯誤碼,當我們拿到錯誤碼時,不能直接把錯誤碼展示給用戶,而是要把錯誤碼轉換爲用戶能夠理解的信息。 1. 先在資源文件夾string中定義錯誤碼對應的字符串,如下: <string nam

原创 Android網絡基礎1——網絡分層

OSI模型 OSI 模型(Open System Interconnection model)是一個由國際標準化組織提出的概念模型,試圖提供一個使各種不同的計算機和網絡在世界範圍內實現互聯的標準框架。 OSI 模型各層間關係和通訊時的數據

原创 設計模式六大原則(5):接口隔離原則

定義:客戶端不應該依賴它不需要的接口。另外一種定義:類間的依賴關係應該建立在最小的接口上。 場景:在接口I中定義多個方法(假如A,B,C,D),類C1通過實現接口I來擴展自己需要的方法A、B;類C2通過實現接口I來擴展自己需要的方法C、D

原创 設計模式六大原則(6):迪米特原則

定義:一個對象應該對其他對象有最少的瞭解。 場景:類與類之間的關係越密切,耦合度越大,當一個類發生改變時,對另一個類的影響也越大。 解決方案:遵循迪米特原則,儘量降低類與類之間的耦合。 迪米特原則英文全稱爲Law of Demeter,簡

原创 設計模式六大原則(2):開閉原則

定義:軟件中的對象(類、模塊、函數等)應該對於擴展是開放的,但是,對於修改是封閉的。即對擴展開放,對修改關閉。 場景:在軟件的生命週期內,產品需要不斷的升級、維護,沒有一個產品從第一個版本開發完就不需要再變化了,除非在下個版本誕生之前它已

原创 Android全局捕獲異常並生成崩潰日誌文件的工具類

開發Android項目時,經常會遇到程序崩潰的情況,這時我們可以在logcat中查看崩潰日誌,但有時錯誤的堆棧信息並沒有顯示出來,這時找起來很不方便;另外一種情況就是項目在測試階段,如果有崩潰,只需讓測試人員把崩潰日誌發過來即可。 /**

原创 Android7.0下載Apk自動安裝

這是一篇非常有價值的文章,詳細介紹了獲取root權限,實現靜默安裝的邏輯,代碼層次也十分清晰。 原文地址:http://blog.csdn.net/cfy137000/article/details/70257912 1. 整體需求

原创 AngularJS 中的Promise --- $q服務詳解

文章轉載自:http://www.cnblogs.com/xing901022/p/4928147.html 先說說什麼是Promise,什麼是$q吧。Promise是一種異步處理模式,有很多的實現方式,比如著名的Kris Kwa

原创 深入源碼解析Android中的Handler,Message,MessageQueue,Looper

此篇博客思路清晰到抓狂,膜拜大神~ ~   原文地址:點擊打開鏈接本文主要是對Handler和消息循環的實現原理進行源碼分析,如果不熟悉Handler可以參見博文《 Android中Handler的使用》,裏面對Android爲何以引入H

原创 Android Binder機制原理(史上最強理解,沒有之一)

原文地址: http://blog.csdn.net/universus/article/details/6211589   Binder是Android系統進程間通信(IPC)方式之一。Linux已經擁有的進程間通信IPC手段包括

原创 設計模式六大原則(3):里氏替換原則

定義:如果對每一個類型爲 T1的對象 o1,都有類型爲 T2 的對象o2,使得以 T1定義的所有程序 P 在所有的對象 o1 都代換成 o2 時,程序 P 的行爲沒有發生變化,那麼類型 T2 是類型 T1 的子類型。這種描述不太好理解,里

原创 AlertDialog修改標題、內容、按鈕的顏色和字體大小

Android開發中,AlertDialog因爲使用起來方便,用的還是很多的,但有時領導還是很會挑刺的,說默認的按鈕不夠大、提示信息不夠醒目。。。這裏介紹一種不用通過自定義view便可修改這些樣式的方法: AlertDialog dial