文章目錄
- 單獨拉取framework
- 開機與開機動畫橫屏
- Android.mk語法
- 單獨編譯SDK
- make 忽略warning
- 單獨修改和編譯Camera2
- 單獨編譯Launcher3
- Android Studio 導入、修改、編譯Settings
- 導入
- Android Studio 導入、修改、編譯Launcher3
- android 開機默認進入指定Launcher
- 植入自己的apk到系統當中
- 內置第三方輸入法
- Settings USB 調試默認打開
- git代碼管理
- 快速修改系統app
- 替換啟動開機畫
- 打包服務應用Car
- 模塊打包到鏡像中
- 預裝帶so的apk
- 搜集命令
單獨拉取framework
repo sync platform/frameworks/base
開機與開機動畫橫屏
https://cczheng.blog.csdn.net/article/details/107951773
Android.mk語法
https://www.jianshu.com/p/703ef39dff3f
單獨編譯SDK
https://blog.csdn.net/starhosea/article/details/78663285
make sdk -j12 'ANDROID_COMPILE_WITH_JACK:=false'
make 忽略warning
在Makefile編譯命令后面:
添加 -w(小寫) 可以忽略warning;
添加 -Werror 可以將warning當作error,出現warning時停止編譯;
添加 -Wall 可以輸出所有
單獨修改和編譯Camera2
先找到包名
maqi@ubuntu:~/data/android-11.0.0_r9$ adb shell dumpsys window | grep mCurrentFocusmCurrentFocus=Window{dc54f28 u0 com.android.camera2/com.android.camera.CameraLauncher}
targetActivity 找到 CameraActivity
<activity-aliasandroid:name="com.android.camera.CameraLauncher"android:label="@string/app_name"android:targetActivity="com.android.camera.CameraActivity"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity-alias>
加入一個標志
<com.android.camera.ui.MainActivityLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/activity_root_view"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@null"><include layout="@layout/camera" /><include layout="@layout/camera_filmstrip" /><com.android.camera.ui.ModeTransitionViewandroid:id="@+id/mode_transition_view"android:visibility="gone"android:layout_width="match_parent"android:layout_height="match_parent" /><TextViewandroid:id="@+id/txtOne"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="MAQI666"android:textColor="#EA5246"android:textStyle="bold|italic"android:background="#000000"android:textSize="18sp" /></com.android.camera.ui.MainActivityLayout>
編譯成功
cd packages/apps/Camera2
mm -j12
* Connection #0 to host localhost left intact
[100% 10/10] Install: out/target/product/angler/data/app/Camera2Tests/Camera2Tests.apk
make: Leaving directory '/home/maqi/data/android-11.0.0_r9'
#### make completed successfully (05:40 (mm:ss)) ####
查看輸出
maqi@ubuntu:~/data/android-11.0.0_r9/out/target/product/angler/system/app$ ls -l Camer*
total 5768
-rw-rw-r-- 1 maqi maqi 5894746 Nov 23 17:51 Camera2.apk
drwxrwxr-x 3 maqi maqi 4096 Nov 17 16:42 lib
drwxrwxr-x 3 maqi maqi 4096 Nov 17 16:45 oat
燒入&&重啟
adb push Camera2.apk /system/app/Camera2/adb shell am restart
效果圖
單獨編譯Launcher3
單獨編譯Launcher3
ninja: error: ‘out/host/linux-x86/framework/host-libprotobuf-java-nano.jar’, needed by
cd /package/apps/Launcher3
mma -j12
Android Studio 導入、修改、編譯Settings
https://blog.csdn.net/qq_45815991/article/details/130278276
mm -j8 WITH_DEXPREOPT=false
make SettingsLib -j12 'ANDROID_COMPILE_WITH_JACK:=false'
https://note.qidong.name/2017/07/06/disable-jack-when-make-android/
導入
先學一下Git控制指令,玩轉repo
repo sync packages/apps/Settings
Resolving deltas: 100% (33776/33776)
Resolving deltas: 100% (33776/33776), completed with 494 local objects.
Fetching: 0% (0/1) 12:43 | 1 job | 12:43 platform/packages/apps/Settings @ packages/apps/SettingsFetching: 100% (1/1), done in 16m4.670s
Updating files: 100% (3143/3143), done.
Checking out: 100% (1/1), done in 16.036s
repo sync has finished successfully.
方式二
maqi@ubuntu:~/data/source/.repo/manifests$ vim default.xml
git clone git://mirrors.ustc.edu.cn/aosp/platform/packages/apps/Settings
Android Studio 導入、修改、編譯Launcher3
https://blog.csdn.net/u012932409/article/details/128772883
android 開機默認進入指定Launcher
https://blog.csdn.net/mj475002864/article/details/104759067
植入自己的apk到系統當中
https://blog.csdn.net/byhook/article/details/51900277
內置第三方輸入法
https://www.jianshu.com/p/e782897c6ab8
Settings USB 調試默認打開
git代碼管理
https://blog.csdn.net/qq_20330595/article/details/134042749?spm=1001.2014.3001.5502
快速修改系統app
https://blog.csdn.net/qq_20330595/article/details/146269135?spm=1001.2014.3001.5502
替換啟動開機畫
https://blog.csdn.net/qq_20330595/article/details/140856458
nanopc -t4 官方替換教程
打包服務應用Car
nothing…
模塊打包到鏡像中
make snod
預裝帶so的apk
預裝帶so的apk
搜集命令
模塊 | make命令 | mmm 命令 |
---|---|---|
init | make init | mmm system/core/init |
zygot | make app_process | mmm frameworks/base/cmds/app_process |
system_server | make services | mmm frameworks/base/services |
java framwork | make framework | mmm frameworks/base |
framework res | make framework-res | mmm frameworks/base/core/res |
framework jni | make libandroid_runtime | mmm frameworks/base/core_jni |
binder | make libbinder | mmm frameworks/base/libs/binder |