Как программно написать ярлык для определенной страницы на главном экране программы запуска Android?



В настоящее время я работаю над приложением для Android, после чего программно пишу ярлык на главном экране. Что-то вроде этого:



Intent shortcutIntent = new Intent();
shortcutIntent.setClassName(ai.packageName, ai.name);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
shortcutIntent.addCategory(Intent.ACTION_PICK_ACTIVITY);
Intent intent = new Intent();
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, appName);

BitmapDrawable bd=(BitmapDrawable)(res.get(app_id).activityInfo.loadIcon(p).getCurrent());
Bitmap newbit;
newbit=bd.getBitmap();
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, newbit);

intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
context.sendBroadcast(intent);


(на самом деле это был пост StackOverflow, который указал мне на это решение).



В любом случае, когда я запускаю приложение в эмуляторе, ярлык записывается на пятую страницу слева(на главном экране 2.3 ). При последующем запуске ярлык записывается на 4-ю страницу слева на главном экране.

Мой вопрос заключается в следующем: есть способ написать ярлык на центральную страницу или на первую страницу (например, передать индексы для массива 2-D, который, по-видимому, содержит ярлыки приложений)? я что-то пропустил в API?



Спасибо!

556   1  

1 ответ:

Вы не можете решить, куда пойдет ярлык.

Comments

    Ничего не найдено.