看板 AndroidDev 關於我們 聯絡資訊
各位大大高手好 小弟現在大二正在跟著實驗室做專題 正在研究如何寫一個Android Kernel層的Driver 我一直很想了解一件事 希望可以得到各位大大的解惑 當我打開一隻Android手機 當我點開一個App 比如說Camera的App 那麼手機從上層到底層到底做了哪些事 我知道Android從上層到下層分別是Application->Framework->HAL->Kernel 我一直想知道每一層之間是如何溝通 當我點開Camera App到底是如何從最上層一直到最下層把camera給呼叫起來 這中間每層到底大概做了些甚麼事 或者有甚麼書籍可以幫助我對這件事的了解 還有 當我去按音量鍵的按鈕 當我按下去 又是如何讓手機知道可以去調整音量 真的希望可以得到各位大大的解惑 非常感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.36.103.134 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1454178942.A.0D2.html
tac0wu: AOSP 01/31 03:06
tac0wu: 書的資訊很多都太舊了 有一定trace code能力 就從官方文件 01/31 03:28
tac0wu: 和source code著手吧 01/31 03:28
ckvir: 其實每層也都差不多都call function而且 01/31 04:24
ckvir: 然後最後 driver 才會直接讀寫device reg之類的 01/31 04:24
james732: 關鍵應該算是JNI? 01/31 20:43
tac0wu: jni binder and share memory 這都會看的到 01/31 21:28
alexcarol: 通常是透過 JNI 吧 @@" 02/03 12:08
tac0wu: camera 三總都會用到 02/04 20:34
tac0wu: binder to cameraService 02/04 20:35
tac0wu: preview frame transferring require share memory 02/04 20:35
tac0wu: jni to native 02/04 20:35
freedom74569: 透過JNI可以跟底層溝通 02/06 10:15
kobe8112: 三種ㄓㄨㄥˇ 02/06 17:17
kobe8112: 這個範例 https://goo.gl/oUsof7 02/06 17:19
kobe8112: 對你想知道的視訊問題應該滿有幫助的 02/06 17:20