前回で終わりのはずだった、Android向けのHWD15ステータス取得アプリ、アゲイン。
というのも、前回作ったものではさすがに中途半端すぎて実用性が乏しかったので、結局ちゃんとした環境で一から作りなおす羽目になってしまったのだ。
(はじめからそうしとけよ)
コンピューター、プログラミング、モバイル、ガジェットなどエレクトロニクス分野を中心にネタを提供するウェブサイトです。最近は中国ネタにも注力中。かつてはHWD15向けのAndroidアプリ「HWD15 Status Notifier」を作ってたりしていました。
前回で終わりのはずだった、Android向けのHWD15ステータス取得アプリ、アゲイン。
というのも、前回作ったものではさすがに中途半端すぎて実用性が乏しかったので、結局ちゃんとした環境で一から作りなおす羽目になってしまったのだ。
(はじめからそうしとけよ)
1.環境
いわゆるIDEというやつ。
巷にあふれている情報ではeclipseが鉄板のようだが、過去に何度かトライ(しようと)した時はNetbeans+NBAndroidを使っていたので、どちらにするかえらく迷った。
結局情報の多いeclipseを選んだのだが、使い始めてすぐエラー多発で使い物にならず、最終的にNetbeansに戻ってきてしまった。
まあ、Netbeansも日本語入力をしたら落ちるという致命的なバグを持ってて、しかも参考サイト通りにやっても改善しなかったので、結局かなり不便な環境で開発する羽目になったのだが...。
2.構想
基本構想は前回AppInventor2で作ったのものと同じ。
定期的(時間設定可能)にHWD15のステータスをチェックし、電波状況と電池残量をAndroidの通知バーに表示する。
通知バーのアイコン表示で電波状況の確認ができればなおよし。
システムにプロセスを殺されないよう、完全常駐できたらいいな。
通信モードや各種設定の変更等は公式アプリでできるので割愛。というか棲み分け。
あくまでも通知バーでリアルタイムに情報を閲覧できるようにするのが第一目標。
といった感じで。
3.開発
基本的なAndroidの知識からしてあやふやなので、過去にトライしようとした時の記憶を頼りに進めた。
基本的にググる→サンプルコードを拝借→動くようになるまで手直しの繰り返し。
完全にコピペコーディング状態な上、参考にした情報には古いものもあったので、非推奨の手法が入り込んでいるかも。
今回は「とりあえず実用的なレベルまでもっていく」のが目的なので、マズいところはおいおい手直ししていくつもり。
4.で、とりあえず形にはなった
丸2日の努力の末、ようやく作りたかったものっぽいのが出来上がった。
(ステータスバーに注目!きちんと電波状況、電池残量が通知されている!)
インターフェイスは面倒なのでAppInventor時代のをそのまま使用。決して良い見た目とはいえないが、あくまでも大事なのは通知バー(しつこい)ということで。
機能的な部分の実装が全て終わったら、デザインについても考えなければならないかな。
機能面も大枠で構想通りにできた。指定した時間ごとにHWD15へアクセスしてステータスを取得。
そして取得したデータをステータスを通知バーに表示。前回と変わりがなければ通知されない(これはAndroidの仕様っぽい)。
また、現在の電波状況に応じて通知アイコンを変更することで、アンテナの本数を常に確認できるようになった。
ただし上記の機能にはまだ不十分な点もあるため、今後以下の改良を加えるつもり。
とまあやりたいことは多いものの、現状でも十分実用できるレベルではある。
正直ここまでできるとは思っていなかったので、この意気で最後まで仕上げていきたい。
続編があればまた更新します。
コメントする