原创 volatile原理 使用條件

有時僅僅爲了讀寫一個或者兩個實例域就使用同步的話,顯得開銷過大,volatile關鍵字爲實例域的同步訪問提供了免鎖的機制。如果聲明一個域爲volatile,那麼編譯器和虛擬機就知道該域是可能被另一個線程併發更新的。再講到volatile

原创 Broadcast廣播內部機制

原文地址 http://my.oschina.net/youranhongcha/blog/226274?fromerr=kZfhK8dQ 廣播機制異常複雜,跟裹腳布一樣,下面這篇文章較爲詳細,特此轉載記錄 1 概述     

原创 android 獲取手機號

原文出處 http://blog.csdn.net/r8hzgemq/article/details/7941274#comments 以下結論,只是本人親手測試的結果,可能並不全面: 最近做一個項目,需要取用戶手機號,用代碼取獲取

原创 史上最快安卓渠道包打包方式

開源項目git地址:https://github.com/mcxiaoke/packer-ng-plugin 開源項目上介紹的gradle配置方式沒有調通,本文直接採用編譯java文件命令行運行的方式實現。 開始超簡單的教程: 一共就

原创 bitmap compress 圖片壓縮 圖片文件大小處理

android中圖片加載到內存中所佔空間大小計算:分辨率 height*width*一個像素所佔空間大小  解析:decode時指定解碼方式爲ARGB_8888 代表用8位表示透明度(A),8位表示紅色(R),8位表示綠色(G),8位表示

原创 AES加密算法原理及java android實現

AES當今最流行的對稱加密算法之一,是DES的替代者。 密鑰是AES算法實現加密和解密的根本。對稱加密算法之所以對稱,是因爲這類算法對明文的加密和解密需要使用同一個密鑰。 AES支持三種長度的密鑰:128位,192位,256位 平時大家所

原创 磁盤緩存 DiskLruCache

JakeWharton在github上的DiskLruCache竟然沒有demo,也沒有詳細說明,用法。很尷尬,找到了郭霖同學的一篇文章,特此轉載記錄。原文地址:http://blog.csdn.net/guolin_blog/artic

原创 android LruCache 原理 以及 源代碼解析

使用LRU(Least recently used,最近最少使用)算法緩存技術能大大提升程序性能。 原理: 1. 新數據插入到鏈表頭部; 2. 每當緩存命中(即緩存數據被訪問),則將數據移到鏈表頭部; 3. 當緩存內容超過指定大小的

原创 代理 proxy 設計模式

一.概述        代理模式也是平時比較常用的設計模式之一,代理模式其實就是提供了一個新的對象,實現了對真實對象的操作,或成爲真實對象的替身.在日常生活中也是很常見的.例如A要租房,爲了省麻煩A會去找中介,中介會替代A去篩選房子,

原创 序列化Serializable serialVersionUID的作用

序列化Serializable的方式特別簡單 實現Serializable接口,再在類中聲明如下這一個屬性即可。 private static final long serialVersionUID = -3928832861296252

原创 匿名內部類 類名規則 定位$1

今天發現友盟錯誤反饋一條信息如下: 從信息中可以確定是TencentUtil類中某個匿名內部類出了問題,但是因爲此類中匿名內部類過多,具體定位是哪一個倒是有點不確定了,所以抽時間研究了下匿名內部類相關知識。 匿名內部類屬於內部類的其

原创 多線程斷點續傳下載

此方法實現的下載,下載速度達到網速上限十幾兆/S。 先講大體實現思路,再講其中各種導致下載速度上不去的坑。   原理:下載的時候多個線程併發可以佔用服務器端更多資源,從而加快下載速度。   1.   請求下載鏈接地址,獲取getConte

原创 10 個迅速提升你 Git 水平的提示

原文轉載地址 http://www.oschina.net/translate/10-tips-git-next-level 最近我們推出了兩個教程:熟悉Git的基本功能和讓你在開發團隊中熟練的使用Git . 我們所討論的命

原创 android studio 單元測試

最近研究了下android studio下的單元測試,網上看了許多帖子,但是大部分都比較複雜而且跑不通! 最後一通鼓搗,其實android studio自帶單元測試,很簡單就能實現。 android studio項目目錄下都有個andro

原创 RXjava observeOn subscribeOn 解析

RXjava 中的observeOn subscribeOn 兩個函數十分類似,相信很多人在使用時會有疑問。官方文檔的說明,包括圖片不是那麼容易理解,特此立翻譯貼一篇。 官方文檔解釋如下地址: http://reactivex.io/do