2014年2月15日土曜日

Android備忘録:BACKキーやHOMEボタンのイベント発行方法

Androidにおけるキーイベントの発行方法は
皆様ご存知だと思います。

1
2
KeyEvent event = new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_0);
dispatchKeyEvent(event);

これでできます。
KeyEvent() の1つ目の引数を KeyEvent.ACTION_DOWN にしている
人もいると思いますが、私はUPのときに発行させたいのでこうしています。

さて、通常のキーイベント発行ならこれで良いのですが、
特殊なキーの場合はこの方法がGoogleに許されていない
ものがあります。

BACKキーの発行

上記例の2つ目の引数を KeyEvent.KEYCODE_BACK にすればOKです。
画面が前のActivityに戻ります。
自分(Activity)を finish() しても同じでしょうか。

HOMEボタンの発行

(キーコードとしては KeyEvent.KEYCODE_HOME が用意されていますが)
HOMEボタンの発行は、dispatchKeyEvent() では発行できません。
公式情報はこちら

is never delivered to application. と書かれていますね。

では、HOMEボタンのイベントを発行することは出来ないのか?
以下のように書けば実現できます。

1
2
3
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);

何かのお役に立てたら幸いです。

SISYOU.KUM



[Androidアプリ]ギタリスト向けアプリ、SIS Open Tuningを公開!

全国的な大雪。皆様お元気でしょうか。
SISYOU.KUMは昨日から喉の調子が可笑しく、
どうやら風邪を引いてしまったようです。
体調にはどうぞお気をつけて。。。

さて、久々の更新になりますが、
本日はAndroidアプリの新作を発表します。

と言いましても、非常にニッチな市場向けになります。

■SIS Open Tuning (無料版)
https://play.google.com/store/apps/details?id=jp.sisyou.kumikashi.sisopentuning

■SIS Open Tuning Plus
https://play.google.com/store/apps/details?id=jp.sisyou.kumikashi.sisopentuningplus



オープンチューニング。
ご存知でしょうか?

今回発表したアプリは、
主にアコースティックギターを演奏される方の中でも、
更にこの「オープンチューニング」を扱う人を対象にしています。
・・・ニッチですね。

(ギターを演奏しない方には難しいかと思いますが)
オープンチューニングについて簡単に説明します。

ギターには6本の弦がありますが、各弦は音の高さが予め決まっています。
ピアノでも定期的に「調音」をしますよね。
「ド」の鍵盤は「ド(C)」の音が出るように、弦の強さを調律しています。

ギターの場合は、低い弦から
E、A、D、G、B、E
という音にするのが一般的です。

あ、ここで、EとかAとかはそれぞれ
ド(C)、レ(D)、ミ(E)、ファ(F)、ソ(G)、ラ(A)、シ(B)、ド(C)
になります。

■レギュラーチューニング
EADGBEの並びをこう呼びます。

■オープンチューニング
主にEADGBE以外のチューニングをこう呼びます。
DADGAD、AAC#GBE、など色々なものがあります。
(それぞれにも名前がついていますが、ここでは省略します)


[アプリを作った切っ掛け]
普通のギター曲の場合はEADGBEのレギュラーチューニングなので
どの曲を演奏するときも大きな調整は必要なく、また、
どの曲はどのチューニング、と暗記する必要もありません。

ですが、オープンチューニングの曲となりますと
演奏する曲が違えば、チューニングも異なります。

SISYOU.KUMは趣味でギターを演奏しているのですが、

  • XXXという曲を練習したあと、次はどの曲を演奏しようかな?
  • YYYという曲にしようか、ZZZという曲にしようか、
  • でもYYYのチューニングは何だったかな?
  • XXXと同じチューニングの曲は無いかな?

こういった事が頻繁に起きました。
この一連の悩みを全て解決するのが、今回発表した「SIS Open Tuning」になります。

悩めるオープンチューニングギタリストの皆様、
是非是非このアプリを使ってみてください。

SISYOU.KUM