在我自己的应用中创建快捷方式

时间:2015-07-31 18:21:23

标签: android shortcut

我正在检索以下可用快捷方式列表:

public static ArrayList<PhoneAppItem> getInstalledShortcuts()
{
    PackageManager pm = MainApp.get().getPackageManager();
    ArrayList<PhoneAppItem> items = new ArrayList<>();

    final Intent shortcutsIntent = new Intent(Intent.ACTION_CREATE_SHORTCUT);
    List<ResolveInfo> ril = pm.queryIntentActivities(shortcutsIntent, 0);
    for (ResolveInfo ri : ril)
    {
        PhoneAppItem item = new PhoneAppItem(ri.activityInfo.packageName, ri.activityInfo.name);
        items.add(item);
    }
    Collections.sort(items, new Comparator<PhoneAppItem>() {
        @Override
        public int compare(PhoneAppItem ai1, PhoneAppItem ai2) {
            return ai1.getName().compareToIgnoreCase(ai2.getName());
        }
    });

    return items;
}

现在我希望用户能够在我的应用中创建自定义快捷方式。实际上,我已经被困在这里,我现在不知道该怎么做......我知道包装和活动,但必须有一些快捷方式......

问题

如何创建快捷方式(即获取必要的数据以启动意图并将其保存在我的数据库中)?例如,联系人应用程序确实为所有联系人提供了快捷方式,如何在我的应用程序中创建这些快捷方式并使用它?

0 个答案:

没有答案