1

私の主な活動には次のコードがあります

@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);
}

アプリを起動するたびに、ホーム画面に新しいショートカットが作成されます。ホーム アイコンが 1 つだけ作成されるようにする標準的または簡単な方法はありますか?

以前のものを(もしあれば)アンインストールしてから(再)インストールすることを考えています。しかし、それはやり過ぎのようです。

4

1 に答える 1