Service強制終了

 Androidひつまぶし編。
 だからもう調査というか基礎固めに徹してしばらく更新する気ないのに~、と思いつつ、手酷いバグ仕様をまた見付けてしまった。
 自分はあまり長時間聴くことが無かったのでなかなか気付かなかったのだけれど、どうにも再生を続けていると唐突に落ちることがある。通算二度目で今度は即刻PCに繋いでログを見てみたらうちのアプリは何もエラーは吐いておらず、代わりにActivityManagerが「No longer want ~」とうちのServiceをhidden即ち強制終了してくれていた。何じゃこりゃあ。
 まぁうちは残念ながら技術系blogではないので詳細はきちんとした方々の手に委ねるとして(参考にこちらなど、成る程、Serviceだろうがなんだろうが、表面上働いている様子がなければkillの対象になってしまうのね。それを防ぐにはnotification(通知)でforegroundにせよと。サンプルにそういうコードがあるのは見ていたけど、通知なんていらねーよ後でいいよと放置していたのがまさかこんな事になろうとは。聞いてないよ、というかだからこそ基礎固めが必要なのですよと。

 流石に小一時間も聴いていたら落ちるようなアプリは前回以上に晒し者に出来ないだろうと、現段階であまり弄りたい所ではなかったのだけれども渋々改修。あーもうこのソース見てらんない。早く丸めてポイして作り直したい。まぁ最初に作るモノはしょうがないよね。
 で、それだけでは面白くないし、実のところ自分用カスタム版とup版を作り分けるのが面倒臭くなったので、前回書いたconfig仕様を盛り込んでみた。Bluetooth機器優先接続と、そのボタン機能のカスタマイズ。BTの優先は、ヘッドセットを繋ぐだけでボタン操作をこのアプリが拾うようにする。offだと再生から停止するまでの間しかBTは占有しない。手動で曲を選択することも出来ないような局地戦アプリなのでご利用は計画的に。またボタンカスタマイズは自分がshuffle操作を優先して使いたかったけど割り当てるボタンがないから。というかprev trackは都合上未実装です、はい(笑)。
 いやぁ、こうして設定画面が付くと何かアプリっぽくなるよね。え?その前に操作UI何とかしろって? 先にconfig作っちゃうところが如何にも自分らしいなとつくづく思い知りましたとさ(笑)。

 という訳で、ver0.04。
>AlbumShuffle004.apk (※提供元不明のアプリを許可で)
 そしてもうアプリ名とかアイコンについては忘れ去られている。
 公式のDL素材から持ってきたんだから利用上は問題ないんだよ、たぶん(そういう問題か)。