原创 isEmpty(),null,“”的區別

1.isEmpty()與null ArrayList<String>mAccountNames = new ArrayList<String>(); 若mAccountNames報空指針異常,則mAccountNames爲null,說明m

原创 android SystemProperties--如何配置系統屬性

實現一個上層設置中的開關控制關機時是否在充電時打開呼吸燈的需求: 明確如何實現:上層寫入一個系統屬性的變量,在開關打開和關閉時改變變量的值(bool類型即可),底層會去讀取這個系統屬性的值,從而做控制;   1.上層需要做的是如何進行設值

原创 Android 單例模式

Android 單例模式 關於單例模式的優缺點和注意事項,以及各種寫法 淺談單例模式的優缺點 單例模式總結 雙重鎖定單例(防止多線程,高併發破壞單例)改寫成抽象類,想要實現單例,來繼承吧 public abstract clas

原创 aidl涉及的Binder框架流程簡單分析

預備的所有文件 分析IBookManagerinterafacejava 前言:IPC機制必然會碰到AIDL,網上相關的博客很多,但總不如自己走一邊來的印象深刻。 預備的所有文件 關於如何使用AIDL,網上很多也比較簡單,

原创 Activity轉場動效

Activity轉場動效 Activity轉場動效 Activity原生轉場的動畫效果實現 xml中實現Activity的轉場動效 代碼中實現Activity的轉場動效 動畫:最基本的View動畫 Activity原生轉

原创 源碼環境下添加系統Service流程

關於系統服務的分析,以及如何實現添加系統服務,分析詳細跳轉鏈接: Android系統服務(SystemService)簡介 添加系統Service涉及的文件 修改文件: Android.mk api/current.txt api/

原创 android N 恢復出廠設置流程簡析

前言: 恢復出廠設置的本質上是先寫入command到BCB中,然後讓手機進入recovery模式,此時會根據BCB中的命令來執行對應的操作,本文主要分析java層的流程。力有不逮,如有錯漏,請多指教。 流程圖: 流程分析: pack

原创 JAVA反射機制總結

JAVA反射機制總結 JAVA反射機制總結 反射的概述 什麼是反射 爲什麼用反射機制 反射機制的關鍵 獲取Class對象 獲得構造器的方法 獲得屬性的方法 獲得方法信息的方法 關於getMethods和getDeclaredMet

原创 int與float深入理解

別在int與float上栽跟頭         int與float是我們每天編程都用的兩種類型,但是我們真的足夠了解它們嗎。昨天在博客園看到一個比較老的笑話: “昨天晚上下班回家,一民警迎面巡邏而來。突然對我大喊:站住!民警:int 類型

原创 [Git]git命令基本使用以及別名設置

Git是一個開源的分佈式版本控制系統,可以有效、高速的處理從很小到非常大的項目版本管理。所以不管是單獨的應用項目,還是手機項目,都會使用到git工具。 git別名設置 以git status爲例,如果敲git st就想達到相同的效果,

原创 Android數據庫接口用法簡介

關於Android數據庫的使用,網上和很多書籍上都有相應的介紹,簡單的使用,難度不大,但是作爲一個持久存儲數據的方式,有必要做個總結,以下內容基本參照《第一行代碼》中的有關介紹。 概述 Android爲了讓我們能夠更加方便地管理數據庫

原创 Vim基本操作

Vim 是 Linux 系統上的最著名的文本/代碼編輯器,也是早年的 Vi 編輯器的加強版,而 gVim 則是其 Windows 版。它的最大特色是完全使用鍵盤命令進行編輯,脫離了鼠標操作雖然使得入門變得困難,但上手之後鍵盤流的各種巧妙

原创 android intent 傳遞list或者對象

方法一:  如果單純的傳遞List<String> 或者List<Integer>的話 就可以直接使用 Java代碼  intent.putStringArrayListExtra(name, value)   intent.put

原创 Android Studio中的SDK Manager使用

前言:網上的開源項目中使用的Build Tools的版本可能和自己本地的版本不一致,如果本地沒有對應的版本,可能會出現編譯報錯的問題。 關於項目的BuildTools的版本設置在build.gradle中,便已報錯如下圖: 解決B

原创 android中px和dp,px和sp的轉換方法

android中px和dp,px和sp的轉換方法 在Android開發中dp和px,sp和px之間的轉換時必不可少的,網上流傳的方法 public class DisplayUtils { /** * conver