原创 Android 耳機事件傳遞流程
原文鏈接:https://blog.csdn.net/frakie_kwok/article/details/73729804感謝作者分享,轉載僅供備忘。在項目中,遇到問題:插入不帶麥耳機,狀態欄顯示仍然是帶麥圖標。 解決此問題涉及到耳機
原创 Android 7.0 寫入ro.serialno小結
項目需要,需要寫入ro.serialno屬性。借鑑了網上的文檔,現把這個知識點做個備忘小結。1.原理:ro.serialno是init從bootcmdline讀取androidboot.serialno,設置成系統屬性ro.boot.se
原创 Android TIF 應用實例-T960 應用添加後臺TvView過程及代碼
項目需要,有個背景透明的應用後臺需要播放TV,之前是使用LiveTv在後臺播放,由於嚴重依賴於LiveTV,使用起來很不方便,如果能直接在這個應用中播放TV,那就好了。於是,嘗試在後臺添加TvView,現記錄使用過程。應用起來比較簡單。
原创 Android TV Audio基本框架及啓動流程分析
一、Android Audio基本框架: 1.Audio 是整個 Android 平臺非常重要的一個組成部分,負責音頻數據的採集和輸出、音頻流的控制、音頻設備的管理、音量調節等,主要包括如下部分: Audio Applicati
原创 Android TV HDMI CEC簡介
5.31之前
原创 android TIF啓動流程--轉載
TIF是Tv Input Framework的簡稱,是Android在5.0後加入的tv框架,爲了支持android tv功能。 1 TvInputManagerService啓動流程 TvInputManagerService在TIF框
原创 TV Input Framework --Android官方說明
原文地址:https://source.android.google.cn/devices/tv/ Android TV Input Framework (TIF) 簡化了向 Android TV 傳送直播內容的過程。Android
原创 linux 系統調用 inotify & epoll
一、inotify 作用: 監控一個目錄下文件的增加、刪除事件 1.重要的數據結構 // 發生的event結構 struct inotify_event { __s32 wd; /* watch des
原创 android Input系統事件分發流程
最近被問到android Input系統事件分發流程,雖然有看過相關源碼,但是隻是匆匆一瞥,沒什麼印象,解釋了半天自己都暈了,甚是尷尬。特地重新看了一遍,整理在博客上,加深一下印象。 網上對android的事件分發流程的講解很多,我就
原创 input子系統——kernel中input設備介紹
一、輸入子系統驅動層分析 在鍵盤驅動代碼分析的筆記中,接觸到了input子系統,鍵盤驅動,鍵盤驅動將檢測到的所有按鍵都上報給了input子系統。Input子系統是所有I/O設備驅動的中間層,爲上層提供了一個統一的界面。例如,在終端
原创 各種initcall的執行先後順序(module_init、postcore_initcall、arch_initcall、subsys_initcall、 fs_initcall)
現在以module_init爲例分析initcall在內核中的調用順序 在頭文件init.h中,有如下定義: #define module_init(x) __initcall(x); 很明顯,module_init()只是一個面
原创 android-----模擬器加載自己編譯的內核(適用於驅動練習)
1. 下載android 模擬器所用的內核源碼, 代號爲goldfish 2. 下載arm-linux交叉工具鏈 3. 編譯內核文件 4. 讓android模擬器運行在剛編譯的內核上 5. 編譯自己的hello內核模塊 6 將hell
原创 cdev_init和cdev_add之後在/dev目錄下沒有長出設備節點原因
因爲在linux裏面有兩種設備文件系統,devfs和sysfs devfs 1) 需要手動創建設備節點mknod fasync_dev c 250 0 2) 或者在fasync_dev_init函數中添加: #ifdef CONF
原创 container of()函數簡介
在linux 內核編程中,會經常見到一個宏函數container_of(ptr,type,member), 但是當你通過追蹤源碼時,像我們這樣的一般人就會絕望了(這一堆都是什麼呀? 函數還可以這樣定義??? 怎麼還有0呢??? 哎,算了
原创 Makefile中的-C和M=解析
轉自:https://www.aliyun.com/jiaocheng/144874.html 摘要:在進行嵌入式開發過程中,經常需要編寫和運行Makefile,且在大型項目開發過程中,一般也都是使用Makefile來進行管理、編譯、運行