原创 Android7.1 亮度自動調節

自動背光在Android系統中屬於display顯示相關模塊,具體是和Lights和Power交互比較多,Power控制其亮度,滅屏,暗屏以及自動背光設置開關等,Lights負責背光燈的背光亮度值的變化。 1、代碼主要涉及到framewo

原创 #ifndef/#define/#endif使用詳解

想必很多人都看過“頭文件中的 #ifndef/#define/#endif 防止該頭文件被重複引用”。但是是否能理解“被重複引用”是什麼意思?是不能在不同的兩個文件中使用include來包含這個頭文件嗎?如果頭文件被重複引用了,會產生什

原创 功耗優化--對齊喚醒

概況 Android手機上安裝的很多應用都會頻繁喚醒手機(喚醒系統、喚醒屏幕),造成手機耗電等現象。良好的對齊喚醒管理方案,就是對後臺應用待機時不頻繁喚醒,智能節省電量。 實現原理:APK作爲該功能的入口,勾選應用後,將勾選的應用寫入黑

原创 Android HAL層簡要分析

新的HAL框架 新的框架使用的是module stub方式,stub在Binder機制中表示對象引用。應用層加載so庫(so庫代碼我們稱之爲module),在HAL層註冊了每個硬件對象的引用stub,當上層需要訪問硬件的時候,就從當前註冊

原创 Linux C常見函數

1、snprintf() intsnprintf(char *str, size_t size, const char *format, ...) 所需頭文件:#include<stdio.h> 函數描述: 將可變個參數(...)按照f

原创 Linux 常用命令

1、touch vi、touch:創建文件; cp:拷貝文件; mv:移動文件。 2、top top命令時Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況。 可以通過top命令查看系統的CPU、內存、運行時間、交換

原创 Android N 進程間通信--Binder

Binder簡介 Binder是Android特有的一種進程間通信(IPC)方式。Android系統的服務都是通過Binder構建的。Binder是整個系統運行的中樞,因此,Android在提高Binder的效率方法下足了功夫。Andr

原创 Android面試常見問題及解答

性能優化 性能優化包含了性能設計和性能優化兩個階段. 通過充分利用底層實現機制,諸如:局部算法、代碼寫法、編程語言技巧、界面Layout優化、控件的選擇、編譯器選項等,圍繞性能關鍵流程去優化代碼細節。 內存泄露主要原因: 內存泄露:程序中

原创 Android性能優化 -- 自啓動管理

自啓動管理簡介 Android手機上安裝的很多應用都會自啓動,佔用資源越來越多,造成系統卡頓等現象。良好的自啓動管理方案管理後臺自啓動和開機自啓動,這樣就可以節約內存、優化系統流暢性等。 自啓動管理流程分析 自啓動管理的實現貫穿了應用

原创 Android組件管理--應用程序啓動流程

        Activity的啓動流程相對複雜一些,涉及到了Activity中的生命週期方法,涉及到了Android體系的CS模式,涉及到了Android中進程通訊Binder機制等等。 前言 我們先看一下源碼中對Activity的

原创 Linux下的tar壓縮解壓縮命令詳解

tar-c: 建立壓縮檔案 -x:解壓 -t:查看內容 -r:向壓縮歸檔文件末尾追加文件 -u:更新原壓縮包中的文件這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只能用其中一個。下面的參數是根據需要在壓縮或解壓檔案時可

原创 送給自己的書

2018年送給自己的書: 四大名著《三國演義》、《西遊記》、《水滸傳》、《紅樓夢》 大秦帝國全書共分爲六部《黑色裂變》《國命縱橫》《金戈鐵馬》《陽謀春秋》《鐵血文明》《帝國烽煙》,2016年中信出版集團出版,孫皓暉 《萬曆十五年》、《中國

原创 Android多線程--HandlerThread的使用以及原理

        如果已經理解了Android的消息機制(Handler、Looper、Message、MessageQueue),再來看HandlerThread就很容易了,參考如下: http://blog.csdn.net/kitty

原创 Android廣播管理三--廣播發送(sendBroadcast)流程分析

        前面我們分析了Android應用程序註冊廣播接收器的過程,接下來它還要等待ActivityManagerService將廣播分發過來。ActivityManagerService是如何得到廣播並把它分發出去的呢?     

原创 Ubuntu中vi命令的編輯模式下方向鍵和退格鍵不能正常使用

        在Ubuntu中,進入vi命令的編輯模式,發現按方向鍵不能移動光標,而是會輸出ABCD,以及退格鍵也不能正常刪除字符。這是由於Ubu