Android应用程序快捷方式在主屏幕上的位置

时间:2016-11-02 21:07:36

标签: android positioning shortcut homescreen android-launcher

我必须创建我的Android应用程序快捷方式并将其放在主屏幕上的特定位置。

我能够通过以下代码成功地为应用程序创建快捷方式 -

    Intent shortcutIntent = new Intent(getApplicationContext(), MainActivity.class);
    shortcutIntent.setAction(Intent.ACTION_MAIN);

    Intent addIntent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "customizeScreenLayout");
    addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.mipmap.ic_launcher));
    addIntent.putExtra("duplicate", false);  //may it's already there so don't duplicate
    getApplicationContext().sendBroadcast(addIntent);

我可以在上面的代码中添加什么内容,以便将快捷方式放在主屏幕的特定位置(即特定的x,y坐标)?

2 个答案:

答案 0 :(得分:0)

我很确定你无法添加任何东西来指定一个特定的位置。查看the sources,用于定位新快捷方式的算法似乎已连接到InstallShortcutReceiver

出于好奇,如果有办法做你想做的事,如果快捷方式已经在指定位置,你会想要发生什么?如何在主页上可能不存在指定位置的情况下处理不同的屏幕尺寸?

答案 1 :(得分:0)

感谢您的快速回复。我在这里发布的问题只是一个项目的一部分,我想创建一个应用程序来检查系统上所有已安装的应用程序并为它们创建快捷方式。之后检查数据库中的x,y坐标,我们需要将应用程序放在那里并将其放在那里。

现在假设指定某个特定职位是可能的,我打算做的是 - 1)卸载所有快捷方式 2)然后,在所需位置安装不同应用程序的快捷方式。

此外,假设我正在处理固定的屏幕尺寸,并且指定的位置始终存在。

如果您发现了某些内容或需要其他信息,请与我们联系。