今年度こそは本気出す(`・ω… ※続きを読むにはクリックして下さい

危うく去年の4/1のエントリと同じタイトルにするところだったぜ、ふぅ…(;´・ω・)

去年の宣言はエイプリルフールだったようで(ヽ’ω`)
USO800理論で考えると、今年は仕事を探さないと宣言すべきなのか
とか悠長なこと言ってられないな(ノ∀`)

ねこあつめの英訳みたいなことをしていてAndroidの翻訳の方を忘れてた(ノ∀`)

気がついてみたら一年の1/4が終わってるΣ(゚∀゚;)
しかもまだ音楽プレーヤー絡みではまってる……_| ̄|○


ActivityManagerという名前のクラスが元々存在することを知ってショックを受けたり、
ActivityGroupというクラスがあるのを知ったが、未だに手を出してなかったり。

複数のActivityから音楽再生をするサービスを使用しようと思いたったが、
その場合、bindService()だと何かと処理が煩雑になりそうなのでstartService()で
処理できないかとぐぐる。Google ブックスで引っかかった本の内容に音楽再生などの
場合はstartService()ではなくbindService()を使いましょうみたいなことが書いてあって
ちょっと悩んだが、startService()を使用した音楽プレーヤーのサンプルを実機で試したところ、
動作には問題がないようだったので、そちらの方に舵を切る。

試行錯誤の結果、サンプル通りにIntentを飛ばす形で再生出来ることは確認出来た。


ここに来て、コントローラをどうするかで悩む。サンプル通りにボタン配置にするか、
MediaControllerを使うか…いずれにしても各アクティビティ上に配置する必要はある。

取り敢えずMediaControllerにしてみた。しかしながら、なぜかBackButtonを拾えない。
色々と試してみたが駄目くさい。そもそもこいつが何物なのかがわからないw

そもそもなんでこいつインターフェイスでMediaController.MediaPlayerControlみたいな
形なんだよ、バーヤバーヤヽ(`Д´)ノとなる。

更にインターフェイスなら何とどうつながってるんだよバーヤバーヤヽ(`Д´)ノと思いつつ、
MediaControllerのソースを読み進んでいたら、確かに中に居たw なんでこれで
動くんだよバーヤバーヤヽ(`Д´)ノと怒りながらもそれを利用するコードを眺めてるうちに
ロジックはともかくそういう形なのだなということはわかったような気がしてくる。

更に、ネストしたインターフェイスでぐぐってヒットした、
【改訂版】Eclipseではじめるプログラミング(17):あなたの知らない、4つのマニアックなJava文法 (3/3)
【改訂版】Eclipseではじめるプログラミング(16):“ネスト”した型で始める軽量Javaプログラミング!? (3/3)
10-6. ネストしたクラス – マンガで分かる Java入門講座
辺りを軽く眺めてなんとなく理解したような気になる(`・ω・´)

それでまぁ色々と彷徨ううちに
how to create custom UI for android MediaController
Custom Android media controller | Brightec, Brighton, UK
に行き着き、これをちょこっと変えて流用してる最中…
media playerを内部で使ってるタイプのコードなので改変が大変…(ヽ’ω`)


関係ないがeclipseへのインポートでちょっとだけはまった。eclipse向けのファイル?が
ないとlaunchされるアクティビティの名前でインポートされるらしく、たまたま、前に
インポートしたプロジェクトもそういう感じでlaunchされるアクティビティがMainActivityという
名前だったが為に

Cannot import MainActivity because the project name is in use

というエラーが(´・ω・`) きちんと読めば、インポート出来ない理由はプロジェクト名の
重複ということはすぐわかるのだが、なんでMainActivityというのが出てくるのかわからず、
そっちの方に意識を集中してしまったが為に時間がかかった(ノ∀`)

ちゃんとした回避策がわからなかったので、一度解凍して、AndroidManifestファイル内の
launch指定されているActivityの名前を一時的に変えてインポートし、インポート後に元に
戻したw


これ早く終わらせないと…(ヽ’ω`)