原创 具有system權限的進程無法訪問sdcard

最近遇到一個問題,之前運行好好的程序,在最近的daily build版本上無法正常運行,後來發現問題是: 我的程序在SDCard中找文件時找不到,而我shell進去後看到文件明明存在,而程序對該文件卻視而不見。折騰了頗久,發現了一個問題:

原创 android service莫名啓動問題

  當您發現service莫名啓動,則說明該service已經死了,又借屍還魂了。它的pid已經發生變化了。這是爲什麼呢? 這是因爲:該service在此之前已經被kill掉了。而service在被殺後,在有些情況下是可以復活的,具體什麼

原创 判斷字符串是否是有效的手機號碼

private boolean isPhoneNumberValid(String phoneNumber) {         boolean i

原创 android camera實例

在android平臺上實現拍照很簡單,這裏提供了一個簡單的demo,有對焦和拍照功能。 1,首先配置文件中的權限如下:     <uses-permission android:name="android.permission.CAME

原创 android:background

android:background="#E6E6FA" 可以選擇您需要的顏色賦值給android:background <?xml version="1.0" encoding="utf-8"?> <resources> <colo

原创 android Camera framework層解析

  轉載請註明出處,謝謝! 相機服務框架類 相機服務是如何運作的呢?若弄清這個問題,必須先了解組成Service Framework的各個類與Bind RPC的連接關係。圖-1描述了在不同的三個部分中各個類與Binder RPC的關

原创 GPIO基礎知識

gpio作爲一種通用的IO接口,使用方法主要如下: Gpio:每個 GPIO 都代表一個連接到特定引腳或球柵陣列(BGA)封裝中“球珠”的一個位 標準頭文件  <linux/gpio.h> [對外接口]

原创 Linux驅動中delayed_workqueue使用:

 在驅動中,有時不能使用中斷(這種情況很少遇到),此時delayed_workqueue就可以發揮其巨大的功效了。也可以用其它同類的內核API實現:如timer.delayed_workqueue的使用過程如下: (1)定義workq

原创 DEVICE_ATTR

使用DEVICE_ATTR,可以在sys fs中添加“文件”,通過修改該文件內容,可以實現在運行過程中動態控制device的目的。 類似的還有DRIVER_ATTR,BUS_ATTR,CLASS_ATTR。 這幾個東東的區別就是,DEV

原创 動態電壓與頻率調節在降低功耗中的作用

關鍵字:芯片運行負載採集 1 DVFS的工作流程 現在,爲了延長便攜式設備(如手機、MP3、多媒體播放器、筆記本電腦等)的電池壽命,芯片廠商們正在絞盡腦汁開發新的節電技術。簡單地說,這些節電技術可以分爲兩類——動態技術和靜態技術。靜態

原创 Linux workqueue

 Workqueue引入 在之前的softirq中提到過,內核在中斷的bottom half引入了softirq,  tasklet,  workqueue。 而softirq和tasklet只能用在中斷上下文中,而且不可以睡眠。所以

原创 Linux kernel Kobjects解析

Kobjects kobject是一種數據結構,定義在 。 struct kobject {     const char    * k_name;/*kobject 的名字數組(sysfs 入口使用的名字)指針;如果名字數組大小小於K

原创 android gdb gdbserver

1:弄一個和平臺相關的程序放入手機#adb push memtest /data/bin2:啓動gdbserver我們編譯出來的系統都已經自帶了gdbserver,如果沒有,例如真機,可以在prebuilt裏面找到編譯好的安裝上去這裏我

原创 android系統功耗問題:systrace

在做android/linux系統產品時,不可避免要解決功能,性能,功耗,用戶體驗問題; 其中功耗問題不可忽視,嵌入式設備電池續航能力是產品競爭力重要一環。 功耗問題,我們需要powermonitor或者精密電源查看各個場景下的功耗; 最

原创 android arm linux下使用內存轉儲crash工具分析 kernel system dump問題

對vmlinux進行反彙編: /home/apuser/mywork/4.4-3.10-prime/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/arm-linux-