android应用快捷方式在主屏幕上的位置



我必须创建我的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坐标)?

我很确定你没有什么可以添加来指定一个特定的位置。查看源代码,似乎定位新快捷键的算法是硬连接到InstallShortcutReceiver的。

我很好奇,如果有一种方法可以做你想做的事情,如果在指定的位置已经有了快捷方式,你会希望发生什么?如果指定的位置可能不存在于主页上,您将如何处理不同的屏幕尺寸?

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

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

同样,这里假设我正在处理固定的屏幕尺寸,并且指定的位置总是存在。

让我知道如果你发现什么或如果你需要额外的信息。

最新更新