gpt4 book ai didi

Android 定义可在自定义启动器中使用的快捷方式

转载 作者:太空狗 更新时间:2023-10-29 14:45:01 25 4
gpt4 key购买 nike

在 Nova 启动器(以及许多其他自定义启动器)中,有一个手势配置,您可以在其中为手势分配各种 Action 。在这些操作中有一个快捷方式选项卡。如何在自己的应用程序中添加可被启动器识别的快捷方式? (我想这是我必须添加到 list 并为其设置 Intent 的东西)

编辑:这是一个 image指出那些行动。

最佳答案

这些记录非常少,不幸的是以前被称为“启动器快捷方式”,现在已经没有名字了。除了出现在 Nova 的手势菜单和类似菜单中之外,它们还会显示在小部件抽屉中的小部件旁边。我认为是“小部件快捷方式”。

官方文档似乎仅限于ApiDemos中的一个demo: https://android.googlesource.com/platform/development/+/master/samples/ApiDemos/src/com/example/android/apis/app/LauncherShortcuts.java

想法是在您的 list 中处理 android.intent.action.CREATE_SHORTCUT 并将结果返回到启动器,其中包含标签、图标和目标 Intent 。然后启动器可以将它变成桌面上的一个图标,或者只是将 intent 用于手势或其他任何东西。

在你的AndroidManifest.xml

<activity android:name=".CreateShortcut">
<intent-filter>
<action android:name="android.intent.action.CREATE_SHORTCUT" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>

然后,当用户选择您的快捷方式时,启动器会对该 Activity 执行 startActivityForResult,您可以立即finish 并显示结果,或者您可以显示一个 UI 以用户让他们配置快捷方式。无论哪种方式,准备就绪后将信息返回到启动器:

Intent result = new Intent();
result.putExtra(Intent.EXTRA_SHORTCUT_INTENT, targetIntent);
result.putExtra(Intent.EXTRA_SHORTCUT_NAME, targetLabel);
Parcelable iconResource = Intent.ShortcutIconResource.fromContext(
this, R.drawable.ic_launcher_shortcut);
result.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconResource);

setResult(RESULT_OK, result);
finish();

关于Android 定义可在自定义启动器中使用的快捷方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41524189/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com