在 Android 中以编程方式创建 URL 快捷方式
Create URL shortcut programmatically in Android
我试图了解如何以编程方式在 Android 主屏幕中创建 URL 快捷方式,但找不到答案。它曾在 Whosebug 上被问过一次,但唯一的答案与问题无关,并且排名为 -2。有人可以帮忙吗?
提前致谢。
private void setShortcut(String url) {
String query = Uri.encode(url, "UTF-8");
browserIntent = new Intent(CATEGORY_BROWSABLE, Uri.parse(Uri.decode(query)));
browserIntent.setAction(ACTION_VIEW);
if (ShortcutManagerCompat.isRequestPinShortcutSupported(getApplicationContext())) {
ShortcutInfoCompat shortcutInfo = new ShortcutInfoCompat.Builder(getApplicationContext(), "1")
.setIntent(browserIntent) // !!! intent's action must be set on oreo
.setShortLabel("Test")
.setIcon(IconCompat.createWithResource(getApplicationContext(), R.drawable.bg))
.build();
ShortcutManagerCompat.requestPinShortcut(getApplicationContext(), shortcutInfo, null);
} else {
Toast.makeText(getApplicationContext(),"launcher does not support short cut icon",Toast.LENGTH_LONG).show();
}
}
我已经在模拟器上测试过它,它可以工作并在浏览器中打开 url 您可以使用 .setIntent(browserIntent)
方法将意图设置为快捷方式,在代码中我创建了 browserIntent 来打开url 在浏览器中
我试图了解如何以编程方式在 Android 主屏幕中创建 URL 快捷方式,但找不到答案。它曾在 Whosebug 上被问过一次,但唯一的答案与问题无关,并且排名为 -2。有人可以帮忙吗?
提前致谢。
private void setShortcut(String url) {
String query = Uri.encode(url, "UTF-8");
browserIntent = new Intent(CATEGORY_BROWSABLE, Uri.parse(Uri.decode(query)));
browserIntent.setAction(ACTION_VIEW);
if (ShortcutManagerCompat.isRequestPinShortcutSupported(getApplicationContext())) {
ShortcutInfoCompat shortcutInfo = new ShortcutInfoCompat.Builder(getApplicationContext(), "1")
.setIntent(browserIntent) // !!! intent's action must be set on oreo
.setShortLabel("Test")
.setIcon(IconCompat.createWithResource(getApplicationContext(), R.drawable.bg))
.build();
ShortcutManagerCompat.requestPinShortcut(getApplicationContext(), shortcutInfo, null);
} else {
Toast.makeText(getApplicationContext(),"launcher does not support short cut icon",Toast.LENGTH_LONG).show();
}
}
我已经在模拟器上测试过它,它可以工作并在浏览器中打开 url 您可以使用 .setIntent(browserIntent)
方法将意图设置为快捷方式,在代码中我创建了 browserIntent 来打开url 在浏览器中