2

私の Android アプリケーションでは、アプリケーション内のいくつかのアクティビティへのショートカットをコードで作成しています。ブロードキャストを使用してこの機能を実行します。

    intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
    sendBroadcast(intent);

それはクールです、それは本当にうまくいきます!

今、私は何か違うことをしたいと思います.次のようにホームを長押しすると、いくつかのアクションがAndroidメニューに追加される場所に「登録」できることがわかりました:

http://www.androidtapp.com/wp-content/uploads/2010/02/UltimateFaves-Add-Home-Screen-Shortcut.jpg

したがって、私の主な質問は次の質問です。

このメニューに登録するにはどうすればよいですか。マニフェストに追加する行があると思いますが、どこでそれを行うべきかわかりません!

助けてくれてありがとう!

ところで、二次的な質問があります。それが成功したら、メニューに別の数のショートカットを追加できますか (想像してみてください。複数アカウントの Twitter クライアントに対してそれを行いたいとします。このリストの Twitter アカウントごとに異なります。) したがって、ショートカットの数はプログラムで計算されます。

4

2 に答える 2

8

SDKサンプルで私の答えを見つけました:

    <!-- This section of sample code shows how your application can add shortcuts to -->
    <!-- the launcher (home screen).  Shortcuts have a three step life cycle. -->

    <!-- 1.  Your application offers to provide shortcuts to the launcher.  When -->
    <!--     the user installs a shortcut, an activity within your application -->
    <!--     generates the actual shortcut and returns it to the launcher, where it -->
    <!--     is shown to the user as an icon. -->

    <!-- 2.  Any time the user clicks on an installed shortcut, an intent is sent. -->
    <!--     Typically this would then be handled as necessary by an activity within -->
    <!--     your application. -->

    <!-- 3.  The shortcut is deleted.  There is no notification to your application. -->

    <!-- In order provide shortcuts from your application, you provide three things: -->

    <!-- 1.  An intent-filter declaring your ability to provide shortcuts -->
    <!-- 2.  Code within the activity to provide the shortcuts as requested -->
    <!-- 3.  Code elsewhere within your activity, if appropriate, to receive -->
    <!--     intents from the shortcut itself. -->

    <activity android:name=".LauncherShortcuts"
              android:label="launchers">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.SAMPLE_CODE" />
        </intent-filter>

    </activity>

    <!-- It is recommended that you use an activity-alias to provide the "CREATE_SHORTCUT" -->
    <!-- intent-filter.  This gives you a way to set the text (and optionally the -->
    <!-- icon) that will be seen in the launcher's create-shortcut user interface. -->

    <activity-alias android:name=".CreateShortcuts"
        android:targetActivity=".LauncherShortcuts"
        android:label="test">

        <!--  This intent-filter allows your shortcuts to be created in the launcher. -->
        <intent-filter>
            <action android:name="android.intent.action.CREATE_SHORTCUT" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
于 2010-07-22T12:05:48.777 に答える
1

二次的な質問について:

あなたが求めているものを正確に達成する方法はわかりませんが、考えられる解決策の1つは、CreateShortcutsアクティビティ(または同等のもの)に可能な選択肢を含むダイアログを開くことです。そこから、アクティビティは対応するショートカットを返します選択したアイテム。もちろん、追加情報 (Intent.putExtra() を参照) を使用して、あなたの場合は twitter ユーザーで、ユーザーがどのアイテムを選択したかを詳しく説明します。

于 2011-01-17T07:42:08.207 に答える