原创 java正則表達式學習二

常用的正則表達式符號: 下面我們我們就來看幾個常用的正在表達式: 1、IP地址的正則表達式: public void checkIp(){ /** * 格式: * 前三位: * 0到9 * 或者1到9,

原创 加載Bitmap對象時出現OutOfMemory

最近簡單做了一個自定義相機,拍拍照後將加水印顯示在拍照界面的右下角,類似於android的原生相機,但是在拍照及顯示的過程中,總會出現 OutOfMemory這個錯誤,下面總結一個解決這個問題的方法。 先說一下這個Bug出現的場景:由於自

原创 android自定義相機添加自定義水印

最近做了一個自定義的相機,拍照後自動添加自定義水印圖片,並且在預覽窗口的右下角顯示出來。下面總結一下自定義相機的步驟 一、繼承SurfaceHolder.Callback回調接口,實現重載的三個方法,初始化攝像頭和預覽框: @Overr

原创 Handler,Looper,MessageQueue的實現

所要用到的android源碼路徑: ActivityThread源碼路徑:android-4.0.3_r1\frameworks\base\core\java\android\app\ActivityThread Activity源碼路徑

原创 Java 線程與併發研究系列三(join()方法使用)

今天這個就來研究一個Java線程中join()方法以及interrupt()方法的使用。 線程A在線程B中調用join()方法的效果就是,線程B一直被掛起,直到等線程A執行完畢以後才繼續執行,當然有join()方法中傳入參數的,那就是 線

原创 ViewPage Fragment 頁面滑動切換

今天做了一個滑動翻頁的功能,說到滑動翻頁大家最先想到的應該是ViewPage,滑動翻頁的實現方式爲:ViewPage+Fragment+ FragmentPagerAdapter+FragmentActivity。這其中有兩種實現方式:一

原创 JPush 服務器消息推送

今天研究了一下JPush推送API調用,JPush即極光推送,其有免費和收費兩種模式。免費的有所限制,如:推送頻率,時間延遲率,成功率等,總之天下 沒有免費的午餐,免費的肯定服務就不會好到哪裏去。下面我們來寫個小例子,模仿一下服務器推送的

原创 Java 線程與併發研究系列一Executor簡介與使用

Executor是java.util.concurrent包中的任務執行器,他的作用是管理Thread對象,從而簡化併發編程。他的類型爲接口,子接口爲:ExecutorService ScheduledExecutorService。所有

原创 java 正則表達式學習一

學習正則表達式首先要明白什麼是轉義字符,轉義字符從字面意思理解就是改變字符的意義,爲什麼需要這樣做呢?首先我們來看一下java中 一些基本的轉義字符: \n    回車      \u000a \t     製表符      \u0009

原创 Java 序列化以及反序列化

今天看了Java編程思想序列化的那一節,明白了Java中序列化的究竟是個什麼事情,主要用來做什麼,相對於其他具有相同功能的操作有什麼不同。 現在就來總結一下。 名詞介紹:何爲序列化與反序列化。我們知道但我們創建一個對象時,一旦程序終止之後

原创 android aidl 使用實例

最近在看Binder的實現機制,但是感覺總不是很清晰,所以想理解他的實現原理,先暫時學會怎麼使用。Binder是android中的一種進程間通信機制, android的底層是Linux系統,Linux系統中進程間通信方式主要有以下幾種:

原创 AsyncTask多任務執行

通過上篇博客對AsyncTask源碼進行分析之後,我們對AsyncTask的任務執行有了一個大致瞭解,但是在那篇博客中我有一個 問題還沒有分析到,那就是線程執行體SerialExecutor類,下面我們來看一下SerialExecutor

原创 字體顏色變化效果

字體的顏色變化效果跟按鈕的背景變化效果差不多,都是定義一個selector選擇器,只是在定義時,無法ctrl+/無法關聯出color的屬性 耽誤了一小段時間。 首先定義在value目錄下創建一個color.xml的文件定義顏色: <res

原创 Java 線程與併發研究系列四(多線程)

當使用多個線程來同時運行多個任務時,有時候需要對某項共享資源進行操作,怎樣使得一個任務不會干涉另外一個任務呢?這時候就需要 使用鎖來使得資源的訪問變得互斥,也就是同時只能有一個任務對共享資源進程訪問。 Java中能夠通過Object的wa

原创 android 線程研究一(AsyncTask源碼深度剖析)

在研究AsyncTask源碼之前,我們先通過一個例子來了解一下AsyncTask的用法,看其有哪些方法。 public class AsynActivity extends Activity implements OnClickListe