【问题标题】:Is there a way to set default launcher app in AOSP without excluding other launchers有没有办法在 AOSP 中设置默认启动器应用程序而不排除其他启动器
【发布时间】:2021-03-19 12:05:02
【问题描述】:

我知道LOCAL_OVERRIDES_PACKAGES,但我想将 Launcher3 设置为我的默认启动器,而不覆盖我已安装的另一个应用程序。

所以我希望应用程序存在于系统上,但不被设置为默认值,LOCAL_OVERRIDES_PACKAGES 不允许我这样做。

【问题讨论】:

    标签: android android-source android.mk


    【解决方案1】:

    您可以设置意图过滤器的优先级。此优先级应高于 0,低于 Provision 的优先级。 https://developer.android.com/guide/topics/manifest/intent-filter-element#priority

    <intent-filter android:priority="1">
         <action android:name="android.intent.action.MAIN" />
         <category android:name="android.intent.category.HOME" />
         <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
    

    Provision(或 SetupWizard)应具有最高优先级。它将在第一次启动时启动。一旦完成,它将被禁用。然后将启动正常的启动器。

    因此您可以设置优先级以覆盖 Launcher3。

    【讨论】:

    • 我不想 Launcher3 覆盖所有内容,我该怎么做才能使弹出窗口不显示询问哪个家庭应用程序?
    • 您可以通过 addPreferredActivityAsUser 以编程方式将您的 laucher 设置为首选启动器。它只能由系统应用程序调用。 cs.android.com/android/platform/superproject/+/…
    猜你喜欢
    • 2014-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多