当我在Android设备上使用firebox浏览器时,我发现他们可以选择为页面加书签,使其在android启动器中显示为快捷方式(如应用程序)。
例如:
在我打开firefox之前:
在firefox中,我导航到一个页面,然后选择底部的选项:
当我回到发射器时,我可以看到一个新图标。单击该图标可以直接在firefox中访问该页面。
有谁知道应用程序是如何实现的?
答案 0 :(得分:3)
可以使用以下方法完成:
Intent shortcutIntent = new Intent();
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, shortcutTitle);
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON, shortcutIcon);
shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, targetIntent);
shortcutIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
MyActivity.this.sendBroadcast(shortcutIntent);
在清单中设置以下权限:
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
在您打开特定网址的情况下,您的目标意图将包含您希望启动的活动的意图,并且还可能包含一些包含所需网址的附加内容。
答案 1 :(得分:0)
试试这个,
Intent shortcutIntent = new Intent(getApplicationContext(), MainActivity.class);
shortcutIntent.setAction(Intent.ACTION_MAIN);
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, R.string.app_name);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.app_icon));
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
addIntent.putExtra("duplicate", false); //may it's already there so don't duplicate
getApplicationContext().sendBroadcast(addIntent);