将自己launcher作为开机launcher

本文介绍如何在Android 5.1系统中替换默认的Launcher应用,包括移除Launcher2和homesample组件,以及解决自定义Launcher启动后的黑屏问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明:此文章主要针对新手,大神可以跳过,不足之处请指教

1   android5.1 launcher分为系统的Launcher2跟一个叫home sample的东东(这个没去具体研究过),有时候我们明明把lanuncher2干掉了,并且在/packzge/app/Launcher2/AndroidMainfest.xml做了如下操作

  <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <!--category android:name="android.intent.category.HOME"/>
                <category android:name="android.intent.category.LAUNCHER" /-->
                <category android:name="android.intent.category.MONKEY"/>
         </intent-filter>

可还是会出现让我们选择home samples跟我们自己的laucher选择(这个在一片博客有详细解释)

所以想要加载自己luancher需要删掉Launcher2跟home sample(android/development/samples/Home)


2 做完以上步骤虽然自己的launcher能够顺利启动,新的问题又来了,动画完成后中间有好几秒的黑屏让人看着很不爽,原来5.1在在out/system/下多了一个pri-app的目录,这个目录下是存放systemui,launcher等等系统权限较高的东西,所以仿照laucher2把自己的apk放在这个目录下

include $(CLEAR_VARS)
LOCAL_MODULE := DigitalPhotoFrame
LOCAL_MODULE_TAGS := optional
LOCAL_CERTIFICATE := PRESIGNED
##LOCAL_MODULE_PATHLOCAL_MODULE_PATH := $(TARGET_OUT)/preinstall
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_SRC_FILES := DigitalPhotoFrame.apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)


然后在build/target/product/core.mk 加载我们自己的luancher就ok了

PRODUCT_PACKAGES += \
    BasicDreams \
    Calculator \
    Calendar \
    CalendarProvider \
    CaptivePortalLogin \ 
    CertInstaller \ 
    Contacts \
    DeskClock \
    DocumentsUI \
    DownloadProviderUi \
    Email \
    Exchange2 \
    ExternalStorageProvider \
    FusedLocation \
    InputDevices \
    KeyChain \
    Keyguard \
    LatinIME \
    DigitalPhotoFrame \
    ManagedProvisioning 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值