2013年1月17日木曜日

Androidアプリのショートカットの作り方

Androidアプリをインストールすると、ショートカットが自動で作成されたらいいな、
と、検索したら、

ショートカット用のクラスを作って登録する、というのを発見。
http://scarlet711.blogspot.jp/2011/06/blog-post_29.html

早速試してみた
Androidmanifest.xml(追記分)
 <activity android:name=".SetNetworkShortcut">
    <intent-filter>
        <action android:name="android.intent.action.CREATE_SHORTCUT"/>
        <category android:name="android.intent.category.DEFAULT"/>
    </intent-filter>
</activity>


SetNetwork.java
public class SetNetworkShortcut extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO 自動生成されたメソッド・スタブ
super.onCreate(savedInstanceState);

// ショートカットの内容 インテントを発行
        Intent shortcutIntent = new Intent(getApplicationContext(), SetNetworkActivity.class);

        // ホーム画面に設置した場合のショートカットの登録内容
        Intent intent = new Intent();
        intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
        Parcelable iconResource = Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.droidwifi);
        // ホーム画面に設置した場合に表示されるアイコンの設定
        intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconResource);
        // ホーム画面に設置した場合に表示されるラベル名の設定
        intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));

        setResult(RESULT_OK, intent);
        finish();
}
}


しかし、これはアプリの起動方法によって複数ショートカットを持ちたい場合は有効だが、
インストール時にショートカットを自動生成してくれるものではなかった....orz

ショートカット自動生成はGooglePlayの機能だった、、、、。
設定のメニューの中にある(ただし現在はウィジェットの自動更新)
勝手に作ってくれるな、と言ってる人もいるし、やめておこう。

0 件のコメント:

コメントを投稿