LearnHouse

Archive for the '程式&軟體' Category

[Android]AOSP升級android.support到androidx

Android 9之後已經啟動androidx的library,也就是將來support library將不再maintain了

由於google官網只提供Android studio的升級步驟,對於開發AOSP寫Android.mk的卻都沒有著墨

參考了google在AOSP上的其它APP,整理測試後可依下列步驟修改來進行升級到androidx

Read more...

posted by admin in 程式&軟體 and have No Comments

[轉]Linux IPC System V 信号量

資料來源:https://www.cnblogs.com/xiaojiang1025/p/5936135.html

模型

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
ftok()              //获取key                 
semget()            //创建/获取信号量集     
semctl()            //初始化信号量集           
semop()             //操作信号量集            
semctl()            //删除信号量集            

Read more...

posted by admin in 程式&軟體 and have No Comments

make命令參數

用法:make [選項] [目標] ...
選項:
-b, -m 忽略兼容性。
-B, --always-make 無條件 make 所有目標。
-C DIRECTORY, --directory=DIRECTORY
在執行前先切換到 DIRECTORY 目錄。
-d 打印大量調試信息。
--debug[=FLAGS] 打印各種調試信息。
-e, --environment-overrides
環境變量覆蓋 makefile 中的變量。 Read more...

posted by admin in 程式&軟體 and have No Comments

gcc 參數

## -c
只生成 obj 檔,並沒有產生執行檔。
例:gcc -c hello.c

## -o
生成執行檔,file name 沒指定時,預設檔名為 a.out。
例:gcc -o hello hello.c

## -llibrary
設定 link 時需便用的 library。
例:gcc -o hello -lhell hello.c,需要的 library 為 libhello.a。

## -Ldir
設定 link 時,查找 library 的路徑。
例:gcc -o hello -lhell -L. hello.c,會在源碼目錄內找尋 libhello.a 。

Read more...

posted by admin in 程式&軟體 and have No Comments

[轉]Android的開機流程及對應的程式碼位置

資料來源:https://www.cnblogs.com/l2rf/p/6605987.html

1.系統引導bootloader
1)源碼:bootable/bootloader/*
2)說明:加電後,CPU將先執行bootloader程序,此處有三種選擇
a)開機按Camera+Power啟動到fastboot,即命令或SD卡燒寫模式,不加載內核及文件系統,此處可以進行工廠模式的燒寫
b)開機按Home+Power啟動到recovery模式,加載recovery.img,recovery.img包含內核,基本的文件系統,用於工程模式的燒寫
c)開機按Power,正常啟動系統,加載boot.img,boot.img包含內核,基本文件系統,用於正常啟動手機(以下只分析正常啟動的情況)

Read more...

posted by admin in 程式&軟體 and have No Comments

adb shell keyevent

由於客戶的需求隱藏了Android的三個很重要的虛擬鍵,為了Debug方便,只好用指令的方式來操作

ex.

adb shell input keyevent 4 

4 -> "KEYCODE_BACK",代表執行back鍵

Read more...

posted by admin in 程式&軟體 and have No Comments