RSS

Androidアプリ開発で、Homeにショートカット作りたい

19 11月

iOSだとインストールするとホームにアイコンができるのでそこからぴゅぴゅっとアプリが起動できますよね。
Androidだとアプリ一覧の中に入るので、インストールしたことを忘れてそのまま起動すること自体忘れてしまう有り様。

なのでインストールしたらホームにショートカットを勝手に作るようにしておく。
ホームから消しちゃったら後は脳内から消去されるだけです。。。
こちらもちょいとググれば出てくるのですが、いちいちググるのが手間なので自分用にメモ

AndroidManifest.xml


<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />

xxxxActivity.java
・ショートカットを作成する処理
(どこでもいいけど自分は一番最初に起動するActivityでやるようにした)

		// ショートカットを作成する
		Intent shortcutIntent = getIntent();
		shortcutIntent.setClassName(getPackageName(), getClass().getName());
		shortcutIntent.setAction(Intent.ACTION_MAIN);
		shortcutIntent.addCategory(Intent.CATEGORY_LAUNCHER);
		
		Intent intent1 = new Intent();
		intent1.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
		intent1.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
		Parcelable icon = Intent.ShortcutIconResource.fromContext(context, R.drawable.ic_launcher);
		intent1.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);
		intent1.putExtra(Intent.EXTRA_SHORTCUT_NAME, getResources().getString(R.string.app_name));
		intent1.putExtra("duplicate",false);
		context.sendBroadcast(intent1);

おまけ。

ビルドするときiOSからアイコンをコピってくる。

build_native.sh

# copy icons (if they exist)
file="$APP_ANDROID_ROOT"/../proj.ios/Icon-48.png
if [ -f "$file" ]; then
   cp "$file" "$APP_ANDROID_ROOT"/res/drawable-mdpi/icon.png
fi
file="$APP_ANDROID_ROOT"/../proj.ios/Icon-72.png
if [ -f "$file" ]; then
   cp "$file" "$APP_ANDROID_ROOT"/res/drawable-hdpi/icon.png
fi
file="$APP_ANDROID_ROOT"/../proj.ios/Icon-96.png
if [ -f "$file" ]; then
   cp "$file" "$APP_ANDROID_ROOT"/res/drawable-xhdpi/icon.png
fi
file="$APP_ANDROID_ROOT"/../proj.ios/Icon-144.png
if [ -f "$file" ]; then
   cp "$file" "$APP_ANDROID_ROOT"/res/drawable-xxhdpi/icon.png
fi

最近物忘れがひどい…(´;ω;`)

広告
 
コメントする

投稿者: : 2014/11/19 投稿先 Android, Cocos2d-x

 

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

 
%d人のブロガーが「いいね」をつけました。