原创 hello驅動程序開發實戰

有必要查詢下Linux內核# uname -r 2.6.28-11-generic # ls /usr/src/ linux-headers-2.6.28-11 linux-headers-2.6.28-11-generic由此可見內核版

原创 Android簡單的計步器應用實現

相信大家對微信,小米手環這兩個東西都不陌生,而且這兩個東西都提供了一個計數器的功能,統計你每天行走的步數,可能有的人每天最開心的事就是看到自己又霸佔了微信步數排行榜第一,離瘦瘦瘦真的是越來越近了。今天我們就來看一看Android中的計步器

原创 HelloWord之JNI實例

閒來無事,所以自己練習了一遍jni實現,開始的時候程序一直找不到對應的lib庫,好生苦惱,後來發現是jni生成的lib庫沒有添加到對應的lib庫環境中,導致查找不到。。。。。 HelloWord.java class HelloWor

原创 Sensor系列之Sensor HAL層數據獲取,基於Qualcomm平臺

前面我們分析了Android Sensor HAL層源碼分析(基於Qualcomm平臺),該篇博文主要講解了Sensor HAL的初始化,以及hal層是怎樣獲取所有sensor列表的。今天我們來進一步瞭解下sensor hal層的數據獲取

原创 線程運行狀態探索

本篇文章主要探索線程的各種運行狀態,包括new, runnable,block, native, terminate等。1.      New狀態下的線程public void newThread(){ Thread th =

原创 Android M PackageManager應用程序權限管理源碼剖析及runtime permission實戰

上一篇文章我們介紹了android的包管理器PackageManager對於應用程序apk的安裝流程,今天我們主要研究應用程序權限的管理部分。 Android應用權限授予部分主要分爲兩部分,第一部分是在PKMS啓動之後,且掃描完所有的ap

原创 Android M PackageManager對於應用程序apk的安裝流程分析

上篇文章我們分析了android M PackageManagerService 啓動過程,今天我們繼續深入瞭解下對於apk的安裝,PackageManager又是怎樣做的呢?應用程序安裝有很多種方法,開發者最常見的就是使用adb ins

原创 Android M PackageManagerService 啓動過程分析

前言在Android系統中,和用戶關係最密切的service應該是PackageManager了。一般來說,用戶想要在Android設備上進行自己感興趣的活動,都少不了apk的支持。不論是打電話,上網,發短信還是玩一些自己喜歡的遊戲,這些

原创 PackageManager的intent匹配查詢流程

上一篇文章我們分析了PackageManager應用程序權限管理,包括runtime權限等等,今天我們分析下packageManager是怎樣查詢匹配intent。本章設計源碼路徑:frameworks/base/services/cor

原创 計步器(Pedometer)實現原理簡介

之前有一篇文章簡單的實現了一個計步器app,今天我們將會從理論上剖析下計步器的實現原理。計步器原理及功能介紹計步器(pedometer)是一個配戴在身上,用來計算走路步數的小配件。從公共衛生與健康醫學的角度看,計步器的功能是在累積一定時間

原创 Android Sensor HAL層初始化流程(基於Qualcomm平臺)

從Android Native到HAL源碼剖析,以sensor爲例 一文中,我們分析到sensor通過hw_get_module以及sensors_open_1去load HAL層的庫以及打開我們的sensor設備,今天我們的文章就來分析

原创 Android Native到HAL源碼剖析,以sensor爲例

Google爲了保護硬件廠商的信息,在Android中添加了一層,它就是大名鼎鼎的HAL層。 在看HAL的編寫方法的過程中,會發現整個模塊貌似沒有一個入口。一般說來模塊都要有個入口,比如應用程序的main函數,可以被加載器進行加載執行,d

原创 Z-Wave技術與zipgateway源碼剖析

1 Z-Wave簡介1.1 什麼是Z-Wave技術Z-Wave是一種新興的基於射頻的、低成本、低功耗、高可靠、適於網絡的短距離無線通信技術。工作頻帶爲908.42MHz(美國)~868.42MHz(歐洲),採用FSK(BFSK/GFSK)

原创 虛擬機大瘦身

本篇主要講解怎樣給windows、linux虛擬機瘦身,節省空間。 windows 虛擬機: 下載ccleaner,在虛擬機中安裝並清理後,關閉虛擬機。在settings-->左邊hard disk中,先執行defragment d

原创 Android多用戶原理

android從4.2開始便添加了多用戶功能,其具體的管理者爲UserManager.多用戶模式的啓用系統判斷當前設備是否支持多用戶模式的依據是配置文件config.xml 中的config_multiuserMaximumUsers 和