2011年5月31日火曜日

今更ながら画面遷移

ASE Rally Monitorの中で、距離を入力する項目がいくつか出てきます。

現在この入力については、Andorid内のキーボードを使用するようにしていますが、横スクリーンで使用すると、数字以外のキーも表示されてしまい、結構入力はしにくいという理解をしています。

縦スクリーンの場合、入力を数値規制していれば、電話と同じように数字のみがキーボードとして表示されるのですが、アプリの性質上そうもいかないため、頭を悩ます材料のひとつになっていました。

で、早い段階で、

別画面でキーボードを作れば

という構想はもっていたのですが、いかんせん、にわかデベロッパーの思い込みとは怖いもので、

画面遷移をすると、距離計測が止まる

と勝手に決め付けていました。この思い込みがあったため、別画面でキーボードを作ることをプランから外してしまい、その代替策として、

ダイアログでキーボードを作る

ということをひたすら考えていました。

ダイアログというのは、時刻入力とかするあのポップアップメニューみたいなやつですが、あれが表示されているときはActivityが動いているというのを既に認識していたため、この方法を考えたと次第です。

Android3.0には、標準で”Number Picker"というものがあるため、レイアウトなどは非常に簡単なのですが、Android2.xでは、簡単にはいかないようで、散々悩んでおります。

そして、気分転換というわけでもないのですが、今更ながら画面遷移でもやってみようかな?と試しにキーボードを作って画面を遷移させてみると・・・・

裏で距離動いてんじゃん!!

ということで、素直にキーボード画面を作ってみることにします。


2011年5月30日月曜日

タブレット入手するかなぁ・・・。

現在自宅で使用しているノートPCは

ThinkPad X32

です。年代物ですが、昨年HDを交換&容量アップして、まだまだ活躍していただくつもり満々なのですが、結構いろいろと疲れている感じは否めません。

このPCでは、WEBブラウジング、ホームページ・ブログ管理をはじめ、メールやアプリ開発・画像編集までさまざまに使っていますが、殆どの割合としては、

WEBブラウジング・ホームページ・ブログ・メール

になるかと思います。

ココで、ふと考えてみると

WEBブラウジング:Google Chrome
ホームページ管理:Googleサイト
ブログ管理:Blogger(Google)
メール:Gmail(Yahooメールもコチラで使用中)

と、実はGoogleラーであることに改めて気がつきます。

で、これらのサービスはWindows環境でなくても、Androidで十分使えるのは言うまでもありません。

だったら、起動の早さやThinkPadへの過負荷を防ぐ意味もこめて、Androidタブレットがあれば困らないのではないかい?と思い始めております。

にわかではありますが、Androidでべろっぱーを表記するのであれば、やはりタブレットを持っていなくてはいけないような気もしますし、近々タブレットを入手してみようかな?と思う今日この頃です。

かなり今更感は否めませんが、せっかくの機会なので、手を出してみようと思います。

2011年5月28日土曜日

マーケットに出てこなかった原因

昨日お送りしたように、ここ1ヶ月近くASE Rally Monitor100はAndroid Marketに表示されていませんでした。で、昨日アプリ側を見直してアップデートしてみた結果、無事に表示されるようになり、早速ご購入いただくことができました。

購入いただいた方は、ここか本家のブログを見て、きっとわざわざご購入いただいたんだと思います。この場をお借りして感謝申し上げます。ありがとうございました。

さて、原因ですが、予想通りアプリ内の”マニュフェスト”に余計な設定をしてしまっていたためのようです。

このアプリを使用できるスクリーンやキーボードなどの指定を意味を理解せずに設定してしまっていたため、それらの条件を満たす端末が世の中になくなってしまい、結果としてマーケットに表示されなくなったというのが原因だと思われます。

世の常として

”余計なことはするな”

というのはまさにこのことですね。

2011年5月26日木曜日

デベロッパーコンソールの”対応デバイス”が・・・・

ASE Rally Monitor100は、ありがたいことに、ほぼ毎日ご購入いただいておりました・・・・・・・5月頭までは。

それから、パタッと止まってしまい、ニーズを満たして止まったんだろうと思っていましたが、今まで毎日だったものが1ヶ月ちかくも無くなってしまうと、いろいろ不安になったりもします。

しかし、単にアプリの魅力が低いのか?とも思えるし、なんともなここ最近でしたが、ふと今日マーケットの管理サイト”デベロッパーコンソール”を見ていたら、見慣れない項目がありました。それは

このアプリケーションは、アプリケーションのマニフェストで定義されているように、これらの機能を備えた端末でのみ使用できます。
画面レイアウト: SMALL NORMAL LARGE XLARGE
必要な端末の機能
android.hardware.location
android.hardware.location.gps
android.hardware.touchscreen
このアプリケーションは 0 台以上の端末でご利用いただけます。

???対応端末が0台?

試しに他のアプリで確認してみると、400台程度の端末に対応と表示されています。

これは何だ!??

といろいろネットで情報を探してみても、いまいち原因がわかりません。とりあえず、マニュフェストが関係ありそうということで、マニュフェストをアプリ同士で比べてみると、どうやらいくつか原因らしきものが見えてきました。

とりあえず、それを直してみてマーケットにアップデートしてみたら、

”403台”

にレベルアップしました。

これでまたしばらく様子を見てみて、原因であれば、申し訳ないことをしてしまったということになります。

Android Marketはしょっちゅう変更されているようですので、今後はちょくちょくチェックしなくてはなりませんね。


縮尺自動計算ツール

昨日は、息抜きを兼ねて、これまでとは違うアプリを作ってみるという話でしたが、早速作ってマーケットに公開いたしました。




たいしたものではないですが、地図などを見ているときに、

「この地図で○○cmか。これって、実際に何mくらいなんだろう?」

って思うときって、少なからずあるかと思います。

また、

「この地図の縮尺ってどのくらい?」

なんてことも。

そんな時に、わかっている2つの数値を入力することで、残りの答えを導いてくれます。

たいしたものではないといったのは、これは計算自体は掛け算か割り算だけだからです。でも、とっさのときに、

「どっちが分母だっけ?掛けるんだっけ?割るんだっけ?」

っていうときに迷わないで済むかと思います。

実は、1年くらい前に、フラッシュ版を作っていました。意外にアクセスがあったので、Android端末でも需要があるかな?と期待しています。


2011年5月25日水曜日

息抜きアプリ製作中

1月後半から、Java~Androidと、0からアプリ開発を勉強してきて、その間にほぼASE Rally Monitorオンリー(Rally Signalというのも作りましたが)で来たためか、少し頭が硬くなってきてしまったと感じています。

同じアプリに向き合ってばかりでは、新しい発見や技術の向上に支障がきたしそうな気がしてきたので、今週はまったく違うアプリの開発息抜きがてらしてみることにしました。

既に概ね完成しており、特段珍しいアプリでもないのですが、あると少し便利かな?というものを作っています。今週末までには公開できるかな?と。

ちなみに、今回の息抜きアプリのテーマは

”多国語化入門”

と今更ながらですが、いろいろやってみてます。

2011年5月23日月曜日

中華PADでのASE Rally Monitorテスト

中華PADでのレポートが届きました。抜粋させていただくと以下のようなレポートです。

Dropad A8という7インチ静電式のTabのGPS対応CFWが出ましたので試してみました。この機種にはGPSは内臓されていないので、USBドングルによるGPSになります。問題なくたちあがり測位もできています。」

その様子はこちらです。

いろいろ精力的にテストしていただいており、感謝するしかありません。

ASE Rally Monitorの開発について、最近は少し停滞気味です。というのも、自分のスキルでできることがそろそろ壁に差し掛かってきており、ココから先はじっくり勉強していく必要がありそうな気がしています。

同じアプリ開発で勉強していると、時に嫌気がさしてきてしまうため、気分転換にまた違うアプリでも作ってみようと思います。


2011年5月20日金曜日

複数チェックの重要性

マーケットでのダウンロードもココのところ落ち着いてきたようで、一旦休憩といったところでしょうか?

そのような状況ですが、現在何名かの方々にお手伝いいただきまして、精力的にテストなどを行っていただいております。

2月末の段階で、早々にマーケットに公開した当初は、実際のラリー競技に最低限使えて、距離&時計が誤作動無く使えれば良いかな?程度に考えておりました。というのも、実際にこういうものに対して、どのような方からどのような使い方を希望するのかが未知数だったため、自分基準で作っていたからでしょう。

公開してしばらくするうちに、自分が関わるラリー競技に近い方から、まったくラリー競技に接していない方まで、さまざまな立場にてアプリを利用いただくようになりました。

そうすると、自分が想定していない使い方や利便性の優劣など、新しい基準などが生まれてくるようになります。

ココで必要になってくるのが、さまざまな目線からテストを繰り返すということですね。

今まで自分が気づかなかったことはもちろん、気づいていてもあえて重要視していなかったことまで、いろいろな問題や発展に出会うことができます。

こればかりは、自分ひとりではクリアしていくことができませんが、幸いかなり献身的にご協力いただける方が沢山おられるおかげで、少しずつバージョンアップを繰り返していくことができます。

既に3ヶ月前を振り返るとかなり発展をさせていただいておりますが、まだ大きな課題をいくつか残しているので、皆さんに忘れられないうちに勉強していきたいと思います。

開発協力いただいている方はもちろん、ご利用いただいているすべての方々に毎日感謝です。

2011年5月17日火曜日

デイ&ナイトモード検討

ちょっとご無沙汰しておりました。公私共に忙しかったもので。

さて、現在モニターの方やユーザーの方から、多種にわたるアイデアをいただいており、うれしくも悩ましい日々を過ごしております。すべてに対応することは難しいですが、ご要望が多いものについては、少しずつでも対応していきたいと考えております。

そんな中で、当初から検討しているうちのひとつが

デイ&ナイトモード

です。カーナビなどでは、昼夜で白黒が逆転した感じの配色に変わるかと思います。要はあれです。

結構最初の段階からこれは検討していましたが、まずは機能をある程度まとめたかったということで、一時保留していました。

最近またこのご要望があるということで、再度テストを開始しようと思っているのですが、実はスマートフォン(に限らずですが)のディスプレイはハード的にかなり反射しやすいので、配色うんぬん以前の問題だったりします。以前一度テストした際も、正直見やすくなったのか?という程度しか影響がなく、それよりも表面に反射防止シートなどを貼った方が効果があるのでは?と思っています。

ただ、アプリ側でデイ&ナイトモードを搭載することで、少しでもお役に立てればとは思っていますので、近々テストをしてもらい、アップデートしていきたいと思います。


2011年5月10日火曜日

GPSスイッチ追加中

iOSでの開発は一旦・・・というか、当面置いておいて、本筋に戻りましょう。

ASE Rally Monitorもバージョン2へとアップデートし、引き続きいろいろ試してみたいと思っていますが、簡単なところから徐々にということで、現在テスト中なのは、

”GPS起動メニューの追加”

今までのものは、先に端末自体のメニューからGPSを起動させておいてからアプリを起動するという流れでした。慣れてしまえば、これでも際立って面倒ということもなく、ホーム画面に、ASE Rally MonitorとGPSスイッチの2つを配置しておけば、まあ問題は無いかな?というレベルではありました。

でも、やはりたまに、GPS起動を忘れてアプリを立ち上げてしまい、一旦戻って・・・・なんてことがあるのも事実です。

ということで、今更ながらシリーズですが、メニューにGPS起動を追加してみました。

Androidの仕様で、例えばアプリを起動したら、自動でGPSが起動するということは基本的にはできないというか、してはいけないようなので、こんな流れになります。

ASE Rally MonitorのメニューからGPS起動を選択
端末(OS)の設定画面に遷移
GPS起動にチェックで端末の”戻る”を選択
ASE Rally Monitorに戻って、GPS捕捉待ち

こんな感じです。ダイレクトでONにできないのは、例えばGoogleマップなどで、特別に現在位置を知る必要が無い場合は、GPSは使いませんが、もしここでユーザーの認識外の状態にて自動でGPSが起動してしまうと、知らないうちにバッテリーが消費されてしまったりするからなんだと思います。

ということで、ASE Rally MonitorのメニューにGPS起動を追加してみました。

当面の目標は、Bluetooth制御の勉強かな?と。

2011年5月9日月曜日

やはりiphoneは恐るべしか

昨日、ASE Rally Monitorについて、初めてドイツから問い合わせがありました。その内容は、

「iphoneバージョンは無いの?」

というもの。

既に以前、日本の方から同じお問い合わせは何度かいただいておりましたが、海外からも同じような問い合わせをいただいたことで、改めてiphoneのシェアというものを実感いたしました。

残念ながら、現在のところiphone版の開発は予定していません。ご存知のとおり、iphone(iOS)のアプリを開発するためには、以下の2点が最大のネックです。
  • MACが必要
  • 毎年2万近くの登録料がかかる
その他にもプログラムを勉強する必要がありますが、これはAndroidの時と条件は一緒なので、受け入れることができますが、上記2点はどうやっても15万くらいの初期投資が必要になりますので、そこに参入することができません。そんなお金があれば、ラリーに出たいし。

もちろんiOSのアプリの方が売り上げとしては期待できると思います。でも、同じ価格で元をとるためには少なくとも500以上売らないといけません。iphone/ipadで500は、どうなんでしょう?まったく予測がつかないですね。

ユーザーとしてはまだまだiOSの方がかなり多いと思うので、その方々にぜひASE Rally Monitorを使用していただきたいのは山々なのですが、誰かがMacを買ってくれるまでは当面お預けというのが現状です。

せめて登録料がもっと安ければ・・・。

2011年5月8日日曜日

アップデートその後の失態

昨日は、ASE Rally Monitorのちょっと大きなアップデートを行いました。

記事の中で、”機能は毎日テストをしていた”と書いていながら、大失態をしてしまいました。原因を追究することが重要なので、大失態にいたる原因を追究します。

まず、大失態の内容というのは

”キャリブレーションモードが正しく機能しない”

というもの。操作系は正常なのですが、キャリブレーション終了処理をしても、計算結果が”0”になってしまうというものです。

キャリブレーションモードを開発したのは4月半ば。その際には当然繰り返しテストをして思うように動作するようになりました。その後、外部GPSロガーを使用するためのテストに移行します。結論はここで根本的な原因が発生します。

まず、距離の算出を簡単にいうと

GPSから取得する秒速 x キャリブレーション比率 = 表示する秒速

となります。スマートフォンの最小更新間隔が”1秒”なので、GPSは1秒ごとに位置情報を取得します。したがって、1秒ごとに秒速を加算していけば、そのまま距離として使えるという内容です。

ところが、ここで外部GPSを使用するということは、この”1秒ごとの更新”が違ってくるということになります。

そこで、その対策をするために、テスト用にAとBという2系統の追加トリップをプログラム上で走らせてどちらが良いかを試して、最終的にAという系統を使うことにしたのですが、テスト中、最初はAにしていたものを後半からBにしていました。

AでもBでもトリップは表示するので、気づかなかったのですが、キャリブレーションモードの計算にはAしか使っていなかった。そのため、Bのままだった状態ではキャリブレーションモード内で距離を計算できずに、結果として”0”になったというわけです。

なぜこういうことがおきたのか?

理由は簡単。それは

頭の中でしかプログラムを考えない

から。本職の方からしたらお叱りを受けるかもしれません。

フローチャートとかを絵に描いて、流れや動きを把握するべきなんでしょうが、それをすべて頭の中でしかやらないため、たまに全体像を把握しきれなくなる。これが根本的な原因ですね。

幸い頭の中でしか考えないため、自分の頭で考えて理解できたことしか頭の中で組みあがらず、自分の技量以上のことはできません。従って原因は自分の頭で考えたこと以外には無く、発見は比較的簡単に行えました。

ということで、大失態発覚から10分程度で再アップデート完了しましたが、大失態ですね。


2011年5月7日土曜日

ASE Rally Monitor 100 アップデート

本日ASE Rally Monitor100のアップデートを行いました。

具体的にはキャリブレーションモード・GPS設定・トリップクリアの設定の追加という、機能の追加がひとつと、マルチスクリーン対応です。

機能の追加は機能自体の不具合だけをチェックすれば良いので、比較的簡単・・・・いうと語弊がありますが、要は自分の端末で毎日テストをしていればチェックできるので、楽なんです。

それに引き換え、マルチスクリーン対応については、アップデートを行った今が一番不安です。

これまでは、あえて対応させていなかったので、マッチしない端末があることを前提としたリリースだったのですが、今回は一応エミュレーターやいくつかの実機では確認したものの、世に流通しているすべてに対してチェックができないため、マルチレイアウト化したが故にレイアウトがおかしくなる端末が出てくるかもしれないという新たな不安が発生しています。

コレばかりは、いつまでも不安がってアップデートを遅らせてしまうと、せっかくのアイデアが新鮮味を失ってしまうかもしれない。でも、なるべく不具合は減らしたいというジレンマを今回初めて体験しております。

とりあえず、主要な端末はある程度テストできたので、今回アップデートいたしました。

この先の機能追加等については、かなり行き詰っているというか、いくつか追加機能の候補はあり、既にテストをしてみたりしているのですが、これ以上いろんな機能を追加していくと、タダでさえ分かりづらいマニュアルが更に分かりづらくなるような気がしています。

ラリーという競技の特殊性は、単に狭い道をありえない速度で競う特殊性だけではなく、ペナルティーや進行過程の特殊性というのがあります。

基本的にはASE Rally Monitor100は現在のバージョンで、WRCや全日本ラリー選手権には参加できると考えています。もちろんもっとお金を出せばより正確だったり、操作性・多機能なコンピューターは沢山あります。しかし、それらの高性能コンピューターに対して、唯一最大のメリットというのが、

手軽さ

です。Androidタブレットで使用していただいている方も沢山おられますが、やはり開発当初は

スマートフォンで使用できる

ということが最大の特徴であると考えていました。そこの手軽さからラリーに触れてもらうというコンセプトは今でも変わってはおらず、この”手軽さ”というのは、端末や入手の手軽さだけをいうのではなく、

操作の手軽さ

も当てはまると思っています。そのため、これ以上多機能になるということは、操作系がどんどん複雑になる印象をご利用いただく方々に与えてしまうんだろうなぁと。

コンセプトを頑なに貫くことも良いことばかりではなく、柔軟な進行というのが重要だということもあるので、難しい選択ではありますが、まずは現バージョンの対応を中心に進めていくことにしたいと思います。

沢山の方から、いろいろアイデアをいただくことは、悩ましくもありますが、やはりうれしいものですし、感謝いたしたいと思います。

2011年5月5日木曜日

中華Pad M7010レポート2

前回に続きまして、中華Pad「M7010」での報告が届きましたので、お送りします。

まず、前回試していただいていたのは、現在公開されているASE Rally Monitor100のフリーバージョンですが、前回も書いたように、このバージョンはマルチスクリーンに対応させていないため、レイアウトとしては中央に寄ってしまい、せっかくの7inchスクリーンが生きない状態でした。

そして、現在開発を進めている試作版では、このマルチレイアウトに対応させるべくトライ&エラーを繰り返していますが、その試作版をM7010で動かしてみてもらいました。それがこれです。



かなり良い感じに近づきました。良くを言えば、もう少しだけ外周の余白を減らしたいところですが、これ以上特定の端末に対してしっかり合わせてしまうと、他の端末で表示切れなどが予想されることから、この程度であればクリアにしようと思います。

ちなみに前回のがこれ↓



情けない話ですが、ようやくマルチスクリーンの概念が分かってきたので、急ピッチで進めております。

機能のアップデートも重要ですが、それと同じく、レイアウトがなるべく有効になることも重要ですので、もう少しがんばってみましょう。

2011年5月4日水曜日

中華Padでの動作確認中

先日お知らせした中華Padでの動作確認について、開発協力モニターの方からフリー版の動作状況について報告いただきました。


Android端末 M7010 7inch

上記のとおり、まずアプリ自体の動作はしているようで一安心です。レイアウトについて、かなり中央に寄ってしまっていますが、これは現在公開しているバージョンでは、高解像度・大画面等、推奨サイズ以外の端末にはレイアウト自体が対応していないため、想定していたとおりでした。

マルチスクリーン対応は今度のアップデート版で実施する予定で、現在GalaxyTabでもマッチを確認いたしました。Android3.0の大画面端末でもマッチ予定です。逆に小さい画面のものをどうするか?と、一番厄介なのがauの”IS03"ですね。専用画面は出来ているのですが、同じアプリで対応させることができるか?が実機が無いため何とも微妙なところです。IS03で開発協力いただける方を引き続き募集中ですので、よろしくお願いいたします。

と話はそれましたが、中華Padでも動作は確認できました。但し中華Padは機種によりGPSが無かったり、タッチパネルの方式が当アプリに向いていなかったり、個体差により同じ機種でも不具合があったりと、様々なリスクを背負うことは否めません。また、故障時の保障は?などと、不安な部分もあります。

お奨めすることはいたしませんが、中華Padに興味を持っている方の参考になればと思いますので、今後ともレポートできることがあればお送りしていきたいと思います。

2011年5月2日月曜日

お問い合わせフォーム

今更で恐縮ですが、サイドバーにASE Rally Monitorのお問い合わせフォームへのリンクを作成いたしました。

Blogerのコメント欄が見づらいため、コメントでお問い合わせいただいた方にご回答をしても、確認していただけてないかもしれない?という不安がありましたので、直接フォームからお問い合わせいただけるようにリンクを作りました。

以前IS03に関するお問い合わせなどをいただいた方や、その他いろいろコメントをいただいている方で、まだ返答等が確認できていないという方は、その都度ご返答はしておりますが、もしよろしければ再度お問い合わせいただければと思います。

お手数をおかけいたしますが、よろしくお願いいたします。

内蔵GPSと外部GPSの差

近いうちにASE Rally Monitorのちょっと大きなアップデートを控えており、最終テストを繰り返しております。具体的にはいくつかの機能の追加と細かいところの修正などですが、その中のひとつとして、すでに何度か出てきている

外部GPSの使用

をチェック中です。

いろいろ考えてどうしたらよいものか?と悩んだ末に、

1.内蔵か外部を選択

2.内蔵の場合は、GPS更新レートを自動で1Hzに設定。外部を使用するときは、1~5Hzまで選択できるようにする。

まず、内蔵GPSの場合、基本的にはMAXで1Hzです。プログラム上では、とにかく最小スパンで更新としてあるので、内蔵GPSを選択した場合は、1Hzにしておけば良いのかな?ということで設定してあります。もし1Hz以外になるようだったら、最悪キャリブレーションで調整可能なので、大丈夫かな?と。

で、外部GPSの場合、一応1~5Hzの5段階で設定できるようにしてみました。GPSロガーによっては、”10Hz”というのもありますが、10Hzでのテスト環境が私に無いため、もし10Hzにした場合、ディスプレイ表示等にエラーがでるとまずいので、当面は5Hzまでとしておくことにしました。

設定画面からレートを選択できるため、GPSロガーを好きなレートで設定したあとは、アプリの設定を同じにすれば帳尻があうはずです。

では、内蔵GPSを使った場合と、外部GPSを使った場合で、どのくらいの誤差があるのか?

そういう疑問が生じたため、同じ区間を内蔵GPS(1Hz)と、外部GPS(5Hz)で比べてみました。その結果は、

内蔵GPS:17900m
外部GPS:17860m

ちょっとびっくりしましたが、誤差は1%未満でした。同じGPSで2回計ってももう少しずれそうなものですが、たまたまとは言え、GPSのくせに?と思う結果でした。

ただし、内蔵GPSの精度というのは、メーカーや世代により大きく違いがあります。私がテストに使っているDocomo SH-03C(SHARP製)は、比較的精度が良いみたいなので、GPSを捕まえる速さなども外部GPSと遜色は無いくらいですが、某メーカーのは明らかにGPS精度が劣るようです。そういう比較的精度が低い端末を使用する際の選択肢として、外部GPSを使えば、精度も向上できるので、良いのではないでしょうか?

ちなみに、現在のところ、外部GPSをASE Rally Monitorで使用する場合、アプリ自体では外部GPSにバイパスできないため、

Bluetooth GPS Provider

というアプリをインストールする必要があります。