有時(shí)候,你可能希望用你自己的launcher程序替換默認(rèn)的android launcher2和launcher3。而且希望作為系統(tǒng)起來就啟動(dòng)你的launcher程序,而不需要用戶選擇。
創(chuàng)新互聯(lián)是一家做網(wǎng)站、網(wǎng)站設(shè)計(jì),提供網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),網(wǎng)站制作,建網(wǎng)站,按需求定制開發(fā),網(wǎng)站開發(fā)公司,從2013年創(chuàng)立是互聯(lián)行業(yè)建設(shè)者,服務(wù)者。以提升客戶品牌價(jià)值為核心業(yè)務(wù),全程參與項(xiàng)目的網(wǎng)站策劃設(shè)計(jì)制作,前端開發(fā),后臺(tái)程序制作以及后期項(xiàng)目運(yùn)營(yíng)并提出專業(yè)建議和思路。
特別是如果你的launcher程序和默認(rèn)launcher程序共存時(shí),即使你的launcher已經(jīng)被用戶選擇為默認(rèn)啟動(dòng)launcher,突然運(yùn)行時(shí),你的程序出現(xiàn)crash,那么系統(tǒng)會(huì)再次彈出選擇哪個(gè)launcher進(jìn)行啟動(dòng)的選擇框,而不是直接重啟你的launcher程序。
所以解決方法是用你的launcher程序在系統(tǒng)rom編譯時(shí),替換默認(rèn)的launcher。
即在你的Android.mk文件加入:
LOCAL_OVERRIDES_PACKAGES := Launcher2 Launcher3 Home
這條語句即可。
例如
你的launcher程序的Android.mk如下內(nèi)容:
LOCAL_PATH := $(my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := XXXlauncher
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_PREBUILT_JNI_LIBS :=
@lib/arm64-v8a/libBugly.so
LOCAL_OVERRIDES_PACKAGES := Launcher2 Launcher3 Home
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)
關(guān)于這一點(diǎn),其實(shí)你在android自動(dòng)的Launcher3的Android.mk文件中已經(jīng)能找到類似的語句:
packages/apps/Launcher3
LOCAL_OVERRIDES_PACKAGES := Launcher2
需要注意的是,你加入此語句后,需要make clean或者在out目錄中清除上次已經(jīng)編譯的Launcher2和Launcher3的中間文件和apk文件。
當(dāng)然,由于此LOCAL_MODULE_TAGS := optional, 所以需要在相關(guān)的device.mk類似的.mk文件中加入
PRODUCT_PACKAGES += XXXlauncher
當(dāng)然在out目錄中運(yùn)行 Find . | grep -i launcher可以找到這些中間文件。
另外我的相關(guān)培訓(xùn)視頻請(qǐng)看:
歡迎觀看我發(fā)布的各個(gè)課程: https://edu.51cto.com/lecturer/8896847.html
另外我的免費(fèi)的linux各種驅(qū)動(dòng)開發(fā)課程如下:
https://edu.51cto.com/course/17138.html
分享題目:關(guān)于android使用自己的launcher替換默認(rèn)launcher的方法
鏈接URL:http://jinyejixie.com/article4/iicjoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、用戶體驗(yàn)、網(wǎng)站維護(hù)、App開發(fā)、網(wǎng)站制作、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)