Как программно запустить определенную домашнюю страницу в Android - PullRequest
1 голос
/ 18 мая 2011

Я хочу иметь возможность запускать определенную страницу домашнего экрана в моем приложении, есть ли способ сделать это?

Ниже приведен типичный способ запуска домашнего экрана, но я ничего не вижу в добавлении экранной страницы или значения индекса.

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

Ответы [ 2 ]

1 голос
/ 18 мая 2011

Мне неизвестен способ запуска определенной «страницы» домашнего экрана. Я хотел ответить на это, хотя, потому что я думаю, что есть кое-что, что вы не рассматриваете: у пользователя может быть другое приложение, установленное в качестве его дома. Например, я использую приложение SlideScreen в качестве домашнего приложения, в котором нет разных «страниц».

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

1 голос
/ 18 мая 2011

Не на главном экране по умолчанию.
Спрятан в источнике активности Launcher (на https://android.googlesource.com/platform/packages/apps/Launcher/+/master/src/com/android/launcher/Launcher.java#822) этот фрагмент кода (см. Строку 822):

if (!mWorkspace.isDefaultScreenShowing()) {
    mWorkspace.moveToDefaultScreen();
}

Поэтому невозможно указать конкретную страницу.

...