【问题标题】:Position of android app shortcut on home screenAndroid应用快捷方式在主屏幕上的位置
【发布时间】:2017-03-16 08:20:39
【问题描述】:

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

【问题讨论】:

    标签: android positioning shortcut homescreen android-launcher


    【解决方案1】:

    我很确定您无法添加任何内容来指定特定位置。查看the sources,似乎定位新快捷方式的算法已硬连接到InstallShortcutReceiver

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

    【讨论】:

      【解决方案2】:

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

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

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

      如果您发现了什么或需要更多信息,请告诉我。

      【讨论】:

        猜你喜欢
        • 2011-09-14
        • 1970-01-01
        • 1970-01-01
        • 2018-03-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多