猫の手も借りたい

ソフトウエア開発者の多忙な生活

Androidの流儀では、メールの着信とかカレンダーのイベントなどによる通知は、Notificationという専用の仕組みを使うのが良いとされています。ステータスバーにアイコンが表示され、通知エリアを引っ張り出して該当するところをタップするとアプリが開くようにします。カレアラだと予定の時刻になった時に鳴動しますが、鳴動を止める操作はこの通知エリアを開いて行うのが良い設計です。逆に、いきなりカレアラの画面が鳴動と同時に開くようにするのは、良い設計ではないと言われています。Androidアプリ開発者の間で有名な CommonsWare 氏は特にそういう主張をしています。が、実際のユーザーの中にはその良い設計では(鳴動を止める操作が)めんどくさいと感じる人がいるようだったので、ある時から鳴動を停止できる画面がいきなり開くようにもできるようにしました。

前フリが長くなりましたが、その画面の見栄えを改善しました。変わったのはボタン部分です。電話を受ける時のボタンみたいな動きをします。(同じではないですが。)



最初からこういう趣の画面にしたかったのですが、ボタンを引きずるとボタンが伸びるようにする方法が分からず、こういうボタンの実装例がネットで見つからなかったので、適当なのでごまかしていました。その後、別のアプリの開発で覚えた方法を使って、これが出来るようになりました。

 
Androidの有料アプリは売れないと言われています。はい。なかなか売れません。アプリの販売形態にもいろいろありますが、無料版(広告ありとか機能制限あり)+有料版(広告なしとか機能制限なしあるいは付加機能あり)の場合、有料版の購入数は無料版のダウンロード数の1%程度というのが一般的だと思います。これは無料版でこと足りるから、というのと、有料版の購入には実際に使うという意図があるものの、無料版のダウンロードは「試しにダウンロードしてみる」という側面があるため、同じ土俵で比較するのは不適当でしょう。それでも、有料アプリが売れにくいことは確かです。

カレンダーアラームヘルパーと「いまどこ?」は試用版+有料版という構成で、試用版には試用期限があります。で、

  • カレンダーアラームヘルパーは試用版ダウンロード数の13%が有料版のダウンロード数。

  • 「いまどこ?」は試用版ダウンロード数の10%が有料版のダウンロード数。


となっています。比率だけで見れば一般的な無料版+有料版アプリよりも売れていると言えそうですが、総数が少ないので「有料アプリは売れない」の呪縛から逃れられているわけではありません。Android端末はのべ2億台が販売され、毎日55万台がアクティベートされているそうですが、有料アプリで収益を上げるのが困難なのはずっと変わっていません。厳しいですね。

 
「いまどこ?」の地図画面におかしな描画問題があるとの指摘をあるユーザー様からもらいました。気付いてなかったのですが、僕のGalaxy Sでも起こりました。問題の現象は地図が崩れた状態で表示されるというものです。端末依存があるようにも思いましたが、Googleの拡張APIのライブラリーを新しいものにしたくて、SDKを更新しました。するといろんなツールが最新版になってしまうのですが、何も問題が起きないというのはきっとなくて、何かしら問題が出るものです。今回はものすごくひどい目に会いました。

すぐに解決出来る問題が3点ほどありました。これはたいしたことではないのでいいです。最悪だったのが、

Error generating final archive: java.io.FileNotFoundException: D:\workspaces\~\bin\resources.ap_ does not exist

というエラーです。ビルドは成功したかのように見えますが、端末に転送しようとするとこのエラーになります。で、いろんな人が解決策をこちらに書き込んでいるのですが、僕の場合はどれも効果なしでした。こちらに同じ問題で苦労した人の報告がありましたが、その人の効果のあった解決策も僕の問題には効きませんでした。で、最終的にはこちらの報告にある、

Eclipse の [Window]→[Preferences]→[Android]→[Build] で、
中段の [Build Output] のラジオボタンを [Verbose] から [Normal] に変更すること。

が唯一の解決策でした。pngファイルに問題があるとか、コンソール出力を調べればどのファイルで問題があったか分かるとかいうのがStackOverflowにありましたが、問題らしいのはその方面には見つかりませんでした。が、上記の設定変更だけは有効で、再度「詳細」に戻すと再現するので、これが解決策であることは間違いありません。で、この問題はこちらに報告があるそうですが、多くの人が困っているようなので早く直して欲しいです。上記設定を「詳細」にしないとProGuardの出力とか出なくなるのがあるので落ち着きません。

ところで「いまどこ?」の地図画面の問題ですが、これまで Goolge APIs by Google Inc. のAPI10, r1 を使っていました。これがAPI10, r2 になりました。とりあえずそれで僕の端末では改善されました。地図の描画もスムーズになったように思えました。「いまどこ?」の次回更新時からこの変更が入ります。

 
現在「いまどこ?」を改良中です。時々もらう問い合わせ内容から、トラブルや誤解を事前に避けられる仕組みを多く取り入れようとしています。

最近、GPSとネットワークの両方の測位結果が得られた時には、アプリが選択しなかった方も見ることができるようにしました。そうする過程で端末の測位処理(Location Provider)の奇妙なふるまいについて新たな発見もありました。それを踏まえて、測位結果を利用するアルゴリズムも改善しました。「いまどこ?」を利用されている方は是非V1.10.0以降に更新することをおすすめします。

 
カレアラの有料版へのコメントに、★2個で次のがありました。

Alarma La alarma debería activarse automáticamente

英語でないのは分かりましたがどこの国の言葉なのかは分かりません。もちろん意味も。で、Google翻訳に入れるとスペイン語のようです。翻訳結果は、

アラームが自動的にあるべき驚かす

と全く意味不明。英語ならと期待するも

Alarm The alarm should be automatically

と意味不明のまま。★2個なので不満なのは確かだと思いますが、意味不明なので何もできません。