Как показать выбор по умолчанию для запуска? - PullRequest
0 голосов
/ 13 февраля 2019

Я создаю приложение запуска, и я хотел бы показать средство выбора запуска по умолчанию вручную.

Я уже нашел и попробовал это , но это не идеально, так как я не могу выбрать ВСЕГДА сразу.После выбора программы запуска мне нужно нажать кнопку «Домой», чтобы иметь возможность выбрать ВСЕГДА.

Это мой код:

public static void resetPreferredLauncherAndOpenChooser(Context context) {
    PackageManager packageManager = context.getPackageManager();
    ComponentName componentName = new ComponentName(context, DefaultLauncherHelperActivity.class);
    packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);

    Intent selector = new Intent(Intent.ACTION_MAIN);
    selector.addCategory(Intent.CATEGORY_HOME);
    selector.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(selector);

    packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, PackageManager.DONT_KILL_APP);
}

и вот манифест:

<activity
        android:name=".activities.MainActivity"
        android:launchMode="singleTask">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.HOME"/>
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>
<activity
        android:name=".activities.DefaultLauncherHelperActivity"
        android:enabled="false">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.HOME" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

Это то, что я получаю (слева) и то, что я пытаюсь достичь (справа)

Должен быть способ, так как Microsoft Launcher и Poco Launcherв состоянии сделать это, но я не смог найти решение, и, к сожалению, нет открытого запуска с той же функциональностью.Кто-нибудь может мне помочь с этим?

...