CPU使用率をステータスバーにアイコン表示するアプリを作りました

Androidのステータスバーは通知エリアとして大変便利なのでついついいろんなアプリを入れて埋まっちゃうわけですが、ご多分に漏れず私も「CPU使用率をステータスバーにアイコン表示する」アプリを入れていました。

このアプリはデュアルコアクアッドコアにも対応しているのですが、先日入手した Nexus7 (クアッドコア) に入れてみるとステータスバーにアイコンが2つ表示されました。
どうやら CPU Usage Monitor さんは1アイコンにデュアルコアまでしか表示できない仕様のようです。

そこで、「1アイコンでクアッドコアの表示を確認したい!」という想いから自分で作ってみました。


そんな経緯で作ったのでアイコンは思いっきりパクリですが一応ちゃんと動くモノができたので満足しています。
分かりにくいかもしれないですが、スクリーンショットの左上のステータスバーに小さく表示されているアイコンがそれです。

今回は個人的に初めての「AndroidのService」を使ったアプリになりました。いわゆる「常駐」するアプリなのでかなり気をつけてコーディングしましたが、こんな単純なアプリでもServiceの仕組み自体がわりと複雑で最初は戸惑いました。おそらく、Activityから常駐停止する機能や設定変更をサービスに反映させたり、逆にServiceの(CPU使用率の)収集結果をActivityに通知する機能などを持たせたので、綺麗に連携する処理を書くのが難しかったのだと思います。

Serviceの基本的な仕組みは理解できたので某mixiビューアやFacebookビューアにも応用したいものですねー。