やまものブログ

メモ書きブログです (^_^;A

音楽プレイヤー (4/4)

10日でおぼえる Androidアプリ開発入門教室 Android SDK2.3対応
の「CHAPTER 09 音楽プレイヤーを作ろう」の4つめ
LESSON 35 再生中の曲の波形を画面に表示しよう
の動作を確認できました。
これがサンプルアプリを含む LESSON としては最後になります


今回のサンプルのスクリーンコピーです。
イメージ 1


画面の真ん中にあるのが今回追加された Visualizer で、再生中の音声に合わせて波形が動きます これは、すぐ下にあるイメージ 2 をクリックすると現れます。


今回のコードでは、deprecated なメソッドは前回から増えていません よって、deprecated 対策はAndroid 開発での前回のブログ(2015/3/14(土)) に掲載した内容そのままです

といわけで、コードの修正は楽だったのですが、下記のエラーで悩みました。
E/AudioEffect(616): set(): AudioFlinger could not create effect, status: -22
E/visualizers-JNI(616): Visualizer initCheck failed -4
E/Visualizer-JAVA(616): Error code -4 when initializing Visualizer.

このエラーはアプリを起動し、音楽の再生を開始して、上記 Visualizer 起動のアイコンイメージ 3をクリックすると発生しました。エラーが発生しても演奏自体は継続します。しかし、Visualizer 画面の内容は黒一色で波形は表示されません。

結局、エラーの原因は不明なままです

対策というか、回避策は下記2つのいずれかでした。
(A) 実機で動作させる
(B) エミュレータ(AVD)を API21(Android5.0) に変更する

このエラーに関してウェブ検索すると、実機で動いた、つまり、(A)についての報告しか見つけられませんでした。
最初に掲載したスクリーンショット (B) のものです。ここで、エラーに遭遇したエミュレータ(AVD)はいつも使っている API16(Android4.1.2) のものでした。


以上で、CHAPTER 09 のアプリは全て動作確認が完了
さらに、次の CHAPTER 10はアプリの配布方法の解説で、新しいサンプルアプリがありません。このため、テキスト全体を通して全てのアプリの動作確認が完了したことになります

ブログを見返すと、昨年10/26 から「10日でおぼえる Androidアプリ開発入門教室」のサンプルを触り始めています。ここまでくるのに 5ヶ月+αを要しました

全体的に頭を使った作業のほとんどは deprecated メソッドの対策だけで満足してしまっていて、Java/Android プログラミングの習得を疎かにしています。オリジナルのアプリを開発するスキルはまだ遠いです。とはいえ、デバッグ作業などを通して、アプリ開発の感触はつかめた気がします。「Androidアプリ開発」はスローペースで継続していきます