Android 5.0開発やAndroid Studio 1.0に慣れる意味で、札幌地下鉄の運休情報をお知らせする「札幌地下鉄Push」アプリをAndroid 5.0対応してみました。
Material Design(のお手軽な部分)を実現するべく、画面上部のアクションバーやステータスバー、画面下部のナビゲーションバーに色がつくようにしてみました。色は札幌地下鉄の南北線・東西線・東豊線にちなんだ3色がランダムで変化するようにしてあります(どうでもいいところばかりに力が入っています)。
1日足らずの作業ですが、今回のAndroid 5.0対応で引っかかったことをメモしておきます。
・「札幌地下鉄Pushウィジェット」と連携するためにServiceにImplicit Intentを投げているところで異常終了しました。Android 5.0からはServiceに投げるIntentはExplicitでなければいけないようです。このあたりを参考にしてImplicit IntentをExplicitに変換して対応しました。
・通知のアイコン(smallIcon)にフルカラーアイコンを設定していたら、Android 5.0ではステータスバーの通知表示が真っ白になってしまいました。どうやらアルファつき白色アイコンが強制されたようです。アイコンを入れ替えて対応しました。
・Android 5.0の話題ではないのですが、Google Play Servicesを6.5に入れ替えました。Material Designに対応させるためのサポートライブラリを含めて、build.gradleの設定はこんな感じに。Google Play Servicesは分割での導入に対応したため、今回はbaseとadsのみを設定しています。
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:21.0.+'
compile 'com.android.support:appcompat-v7:21.0.+'
compile 'com.google.android.gms:play-services-base:6.5.+'
compile 'com.google.android.gms:play-services-ads:6.5.+'
}
2014年最後の話題は開発で締めくくることができました。みなさまよいお年をお迎えください!