標籤:電話 receive pop 音樂播放器 技術分享 業務 setup 包括 setting
刪除不使用的apk
系統內建的app位置是在/android4.3/packages/apps
以下是一些APP作用分析:
| |– BasicSmsReceiver
| |– Bluetooth (藍芽)
| |– Browser (瀏覽器)
| |– Calculator (計算機)
| |– Calendar (日曆)
| |– Camera (相機)
| |– CellBroadcastReceiver
| |– CertInstaller (在Android中安裝數位簽章。被調用)
| |– Contacts (撥號(調用)、連絡人、通話記錄)
| |– ContactsCommon
| |– DeskClock (案頭時鐘)
| |– Dialer
| |– Email (Email)
| |– Exchange
| |– Gallery (相冊。和Camera相似,多了列表)
| |– Gallery2
| |– HTMLViewer (瀏覽器附屬介面。被瀏覽器應用調用。同一時候提供儲存記錄功能)
| |– KeyChain
| |– Launcher2 (登陸啟動項,負責應用的調用)
| |– LegacyCamera
| |– Mms (?多媒體訊息業務)
| |– Music (音樂播放器)
| |– MusicFX
| |– Nfc
| |– OneTimeInitializer
| |– PackageInstaller (安裝、卸載程式的響應)
| |– Phone (電話撥號程式)
| |– PhoneCommon
| |– Protips
| |– QuickSearchBox
| |– Settings (開機設定,包括電量、藍芽、裝置資訊、介面、wifi等)
| |– SmartCardService
| |– SoundRecorder (錄音機。可計算儲存所需空間和時間)
| |– SpeechRecorder
| |– Stk
| |– Tag
| |– VideoEditor
| |– VoiceDialer (語音辨識通話)
對於不須要的app,
/out/target/product/m801/system/app刪除相應apk。
到/packages/apps找到相應原始碼。改動.mk
然後又一次編譯。
下次抽時間琢磨一下:
SystemServer.java 刪除不須要的系統服務
init.rc 去除不須要依賴的程式
preload 屏蔽不須要的資源與類
google service
3d opengl、rendscript
增加自己定義的apk有原始碼的1 從/packages/app/calendar下複製Android.mk到自己項目裡。並改動內容:
LOCAL_PACKAGE_NAME := AutoRun
AutoRun是自己的app的名字
2 改動/build/target/product/generic_no_telephony.mk,增加自己apk名字:
(android2.2版本號碼改動的是generic.mk)
把包括Android.mk的原始碼放到
android4.3/packages/apps
3 編譯
命令列到項目根資料夾,運行:
source build/envsetup.sh
choosecombo(選擇預設直接斷行符號)
make -j2
也有說直接這樣。我沒有測試:
make clean
make
編譯完畢後,啟動虛擬機器:
./emulator -avd androidname -system out/target/product/generic/system.img
單個模組編譯的方法
$.build/envsetup.sh
mmm packages/apps/Contacts/ 示範範例編譯連絡人
這時產生
out/target/product/generic/data/app/ContactsTests.apk
out/target/product/generic/system/app/Contacts.apk
make snod 又一次產生system.img
第三方apk編譯
使用yaffs2
今天沒有時間搞了。下次再看詳細做法。
Android 4.3 系統裁剪——刪除不使用的app及添加自己app