1

ホーム画面にアプリケーションのショートカットを作成するために、次のコードを作成しました。

private void createShortcut() {

        Intent shortcutIntent = new Intent(this, ActActivation.class);
        shortcutIntent.setClassName("org.mabna.order",
                "org.mabna.order.ui.ActActivation");
        shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

        Intent addIntent = new Intent();
        addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
        addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "test");
        addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
                Intent.ShortcutIconResource.fromContext(this, R.drawable.icon));
        addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
        this.sendBroadcast(addIntent);

    }

正しく動作しますが、プログラムを実行してこのコードを実行するたびに、「ショートカット テストが作成されました」というメッセージが表示され、ホーム画面に新しいショートカットが追加されます。アプリケーションを10回開いた後、10個のショートカットがあります。

このメッセージ ボックスと複数のショートカットの作成を防ぐにはどうすればよいですか?

4

3 に答える 3