Androidアプリ
2010 年 8 月 16 日
Androidアプリを作ってみました。
Androidアプリも相当数出そろってきましたね。
なので、今更なのですが。。。夏休みの工作です。
サントリーオールド空瓶の謎のボトル人形みたいなもんです。
Java経験少ない僕でも数時間で出来たのでJavaをずっとやっている方や、詳しい方は
あっという間でしょう。
せっかくなので携帯端末の位置情報センサーを使って
「コンパス(方位磁石)」作ってみました。
Sensor.TYPE_ORIENTATION・・・傾きセンサーを使います。
・・・ですが、「Sensor.TYPE_ORIENTATION」は何時からか「非推奨定数」となっていました。
Android2.2からはgetOrientationメソッドが推奨ということです。
画像を用意してクルクルさせるのも良かったのですが、
それじゃあんまりなので、もっとプログラミングっぽく。
コンパスの針も計算して描画させましょう。
Eclipseのエミュレータではセンサーイベントが取れないのか期待した動作をしませんので
実機で試しましょう。
因みに実機はHTC Desire X06HTで動かしてみました。
少しだけ解説。
・用意するクラスは2個だけ(CompassActivity.java、MainView.java)
・Activityを継承しているクラスにinterface、SensorEventListenerを実装。
・センサーチェンジイベント(onSensorChanged)が発生する毎に描画(MainView)に行きます。
・MainViewはViewを継承しましょう。
・傾きセンサーで取得された角度を基に座標を求め、針を描画(onDraw)します。
・針を描画では三角関数を使う。三角関数はJavaのMath.cos、Math.sinがあるのでそこにラジアンを渡してあげましょう。
あまり作りこんでいませんが、Androidアプリ作り始めに丁度良かったです。
参考サイト
Android開発の基本、公式サイト この辺読めばだいたい解ります。後はググれば情報満載です。
・Android
アイコンデザインガイドなど
・Icon Design Guidelines


