1. 程式人生 > >系統編譯刪除不必要的Apk

系統編譯刪除不必要的Apk

本文以Android 5.1的A83T octopus-f1工程為例.

預裝APK分為四種priv-app, preinstall, precopy, app

out/target/product/octopus-f1/system/priv-app 系統預設APP

out/target/product/octopus-f1/system/app   使用者APP

out/target/product/octopus-f1/system/precopy:  第一次啟動Launcher之前安裝到/data目錄, 可解除安裝

out/target/product/octopus-f1/system/preinstall: 第一次系統啟動安裝到/data目錄, 可解除安裝

先裝這四個資料夾下的檔案全部刪除.

配置檔案為.mk結尾的檔案主要在 build/target/product, device/softwinner/octopus-f1目錄下.

將PRODUCT_PACKAGES是不需要的專案刪除:

build/target/product/core.mk:

PRODUCT_PACKAGES += \
	CertInstaller \
	DeskClock \
    Launcher2 \
    Settings 
##############
# 2017.10.26 OK
#  LatinIME 
# KeyChain 
#  ExternalStorageProvider
###########################
# 2017.10.25 OK
# InputDevices 
#   DocumentsUI 
#	Keyguard 
#BasicDreams 
#CaptivePortalLogin 
#ManagedProvisioning 
###########################
# 2017.10.25 OK
#   Exchange2 
# 	MmsService 
#   PrintSpooler 
# 	PacProcessor 
#   libpac 
# 	Calendar 
# 	CalendarProvider 
# 	Exchange2 
# 	VpnDialogs 
# 	SharedStorageBackup 
# 	FusedLocation 
# 	ProxyHandler 
# 	Telecom 
# 	TeleService 
####################
# 2017.10.25 OK
#    QuickSearchBox 
#    PicoTts 
#   Contacts 
#    DownloadProviderUi 
#   Browser 
#   Calculator 
#   Email 

build\target\product\core_base.mk:等等

另外在全域性查詢可使用find+grep組合, 如:

[email protected]:/home/root/CQA83TAndroid_v2.1.0_bv3/android# find . -type f -name \*.mk | xargs grep Dialer -in
./external/srec/config/en.us/config.mk:19:        VoiceDialer.g2g \
./external/srec/config/en.us/Android.mk:50:# ALL_PREBUILT += $(G2G_INSTALL_PATH)/VoiceDialer.g2g \
./device/softwinner/octopus-f1/ril_modem/huawei/mu509/huawei_mu509.mk:8:	Dialer \
./device/softwinner/octopus-f1/ril_modem/Oviphone/em55/oviphone_em55.mk:11:	device/softwinner/fiber-3g/ril_modem/Oviphone/em55/wcdma-ppp-on-dialer:system/etc/ppp/wcdma-ppp-on-dialer
./packages/services/Telephony/Android.mk:3:# Build the Phone app which includes the emergency dialer. See Contacts
./packages/services/Telephony/Android.mk:4:# for the 'other' dialer.
./packages/apps/Dialer/tests/Android.mk:15:LOCAL_PACKAGE_NAME := DialerTests
./packages/apps/Dialer/tests/Android.mk:17:LOCAL_INSTRUMENTATION_FOR := Dialer
./packages/apps/Dialer/Android.mk:43:LOCAL_PACKAGE_NAME := Dialer
./packages/apps/VoiceDialer/tests/Android.mk:12:LOCAL_PACKAGE_NAME := VoiceDialerTests
./packages/apps/VoiceDialer/tests/Android.mk:14:LOCAL_INSTRUMENTATION_FOR := VoiceDialer
./packages/apps/VoiceDialer/Android.mk:8:# LOCAL_PACKAGE_NAME := VoiceDialer
./packages/apps/VoiceDialer/Android.mk:16:# Install the srec data files if VoiceDialer.apk is installed to system image.
./build/target/product/full_base_telephony.mk:23:# VoiceDialer
./build/target/product/sdk_base.mk:32:#	Dialer 

如此可找到對應的mk將其刪除即可. 

注意如果要刪除apk, 必須先把out中的apk刪除才行, 再進行android make.


相關推薦

系統編譯刪除必要Apk

本文以Android 5.1的A83T octopus-f1工程為例. 預裝APK分為四種priv-app, preinstall, precopy, app out/target/product/octopus-f1/system/priv-app 系統預設APP out

Android 4.3 系統裁剪——刪除使用的app及增加自己app

刪除不使用的apk 系統自帶的app位置是在/android4.3/packages/apps 下面是一些APP作用分析: | |– BasicSmsReceiver | |– Bluetooth (藍芽) |

Microsoft Visual Studio2005中刪除必要的最近的專案

VS2005在登錄檔裡記錄了最近的專案的解決方案的路徑,只要找到對應的項,刪掉即可搞定 VS2005的“最近的專案”在登錄檔中的位置(進入登錄檔執行命令regedit):HKEY_CURRENT_USER/Software/Microsoft/VisualStudio/8.0

androidapk編譯系統裡的方法

但是在android系統裡java應用如果生成了apk包就會被安裝到system/app目錄下,然後打包成系統的映象檔案,如果我們想把java的應用編譯生成apk包,而且不將啟安裝到system/app目錄下,預設的android系統是沒有這個編譯功能的,預設情況下java應用的程式碼都會被系統編譯的,但是如

用Python處理文字——刪除.txt每行中的必要字元

最近實驗室給配了臺新電腦,想把原電腦上的python第三方庫遷移到新電腦上,但逐一使用pip安裝又太麻煩。現在使用pip命令批量安裝,省去逐一安裝的麻煩。 在原電腦CMD使用pip list命令獲得的package每行後面都帶有版本號,如下 C:\Users\27641>pip lis

手機如何安裝應用刪除了(app安裝成系統目錄下、更改開機畫面、更改桌面桌布等)

又是週末,休閒娛樂來一發嘛(此處省略了個表情),為什麼要說安裝app成系統檔案去呢,問這個問題的你得去找個女朋友了,我這裡來個標準的答案是讓女友刪不掉你的app啊(至於這個app你想幹嘛就是你的事了)! 為了不讓女朋友反感,簡單粗暴的方法就是每天一張她精心批過的圖片當手機桌

Arch,Manjaro系統中Atom刪除檔案.提示gvfs-trash...

在archlinux或者是manjaro中,atom刪除檔案提示 gvfs_trash not install ? 解決方案: #在環境變數中,增加 export ELECTRON_TRASH=gio 重啟Atom Unable to delete files

Linux系統刪除亂碼檔案或者目錄,rm刪除

Linux系統下解壓zip或rar檔案後可能會產生亂碼檔案或者目錄,使用rm -rf fileName 無法刪除,rm -rf 刪除上一級目錄可以,但是需要先備份,比較費時間, 其實可以根據索引節點(i節點) 進行刪除。 [[email protected] Ul

ubuntu64位系統編譯時標頭檔案找到的問題

今天編譯webrtc時出現以下錯誤: ninja -C out/Debug All ninja: Entering directory `out/Debug' [1/6] CXX obj/talk/app/webrtc/java/jni...peerconnection_s

Mac系統登錄系統解決辦法

mac os x 開機 移動硬盤 登錄 單用戶模式 man sbin 進入單用戶 mman 1.找到買蘋果電腦時附帶的 Mac OS X 系統光盤,或者有蘋果 Mac OS X 系統鏡像的 U 盤/移動硬盤,塞入光驅(或插在 USB /火線接口上)。重啟蘋果電腦,開機時按住

nodejs 文件系統(fs) 刪除文件夾 及 子文件夾下的所有內容

所有 sans pan ont each 訪問 exist 返回 family http://blog.163.com/hule_sky/blog/static/2091622452015112821829773/ node 文件系統fs 為我們提供了一些方法 進行文件和文

CentOS系統編譯安裝服務如何添加開機自啟動

開機自啟 rc.local生效 今天在重啟CentOS系統時,發現已設置開機自啟動的服務並沒有隨開機自啟動,於是查閱資料,定位原因,特更此文,以備查閱。 首先,之前的做法是將命令寫入/etc/rc.local文件中,如下: vi /etc/rc.local #!/bin/ba

關於管理系統登錄了的問題

min 可能 前臺 登錄 補充 界面 使用 問題 測試 今天我所負責的後臺管理系統中,有客戶反饋了使用2345瀏覽器及qq瀏覽器登錄不了的問題,因為該系統不是由我開發,前臺也不是。 可能沒有做過兼容測試吧,畢竟都是ie的內核,然後2345的我還沒有解決,因為該瀏覽器界面實

光貓手機自動激活系統-手機刪除老onu演示

手機刪除老onu本文出自 “三塊錢的博客” 博客,請務必保留此出處http://i0794.blog.51cto.com/3235077/1949398光貓手機自動激活系統-手機刪除老onu演示

git提交忽略必要的文件或文件夾

文件夾 generate clip light sdn 點擊 icon targe 倉庫 轉http://blog.csdn.net/u014079773/article/details/51602344 eclipse安裝git插件設置:點擊“Add Pattern”

vs2008在win7系統中安裝問題

nbsp ice 技術分享 分享 ffice log off ima 版本 據說是office軟件沖突問題。 解決方案是卸載了office軟件,不管是2007還是其它版本,先安裝vs2008,再安裝其它的。 vs2008在win7系統中安裝不問題

1、避免創建必要的對象

創建對象 ger 簡潔 每次 final nal turn fin 什麽 一般來說,最好能重用對象而不是在每次需要的時候就創建一個相同功能的新對象。 1、去除重復創建的字符串實例 1 String s = new String("china"); 2 // "china"

Android系統編譯出錯

android 編譯出錯在Android7.1編譯過程中出現如下錯誤:Starting build with ninjaninja: Entering directory `.‘ [ 0% 8/30301] Ensure Jack server is installed and startedJack

銀河麒麟操作系統編譯缺少kdeamon.h文件

family 降級 nbsp mil spa 內容 font 操作 dev 安裝銀河麒麟操作系統過程中 編譯ltp時,如果報缺少kdeamon.h文件 那麽就要降級libc6-dev版本至2.21或者升級ltp版本解決,或者將ltp的makefile文件的kdeamon.h

系統平臺的作為導致移動互聯網創新減緩

互聯網系統 移動互聯網平臺 互聯網徐金良本文首發於百度百家:http://baijiahao.baidu.com/builder/preview/s?id=1576689342853665570系統平臺的不作為導致移動互聯網創新減緩移動互聯網在2013年將出現發展瓶頸,沒有顛覆性的系統平臺出現,導致如今的移動