我的主要活动有以下代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
…
homescreenShortcut();
}
private void homescreenShortcut() {
Intent shortcutIntent = new Intent();
shortcutIntent.setClassName(this, this.getClass().getName());
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
shortcutIntent.addCategory(Intent.ACTION_PICK_ACTIVITY);
Intent intent = new Intent();
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "MyApp");
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
Intent.ShortcutIconResource.fromContext(this, R.drawable.app_icon));
intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
sendBroadcast(intent);
}
每次启动应用程序时,它都会在主屏幕上创建一个新的快捷方式。是否有标准或简单的方法来确保只创建一个主页图标?
我正在考虑卸载之前的(如果有的话),然后(重新)安装。但这似乎有点矫枉过正。
答案 0 :(得分:0)
添加
shortcutintent.putExtra("duplicate", false);