2015年03月

Google Maps Android API V2

いまどこ?の地図画面はGoogle Maps Android API V1という古いバージョンを使っています。古いと言っても期限の定めなく利用できるGoogleのサービスです。V2はV1よりも大幅に機能強化されているのですが、互換性がないためいまどこ?の地図画面の機能(マーカーや吹き出し)を移植するのが厄介なので、V2への対応をためらっていました。でもそろそろ重い腰を上げる時期かな、と思い対応を始めました。

やることはたくさんありますが、対応できればメリットも大きいと思います。ゴールデンウイークあたりに公開したいと思っています。

Googleからの案内は無関係でした

Googleのプッシュサービスを使っている開発者に案内された、古いAPIを廃止しますって案内は、僕には無関係でした。いまどこ?は問題の古いAPIを使っていないことがはっきりしたからです。ちょっとだけあせりましたが、無関係で良かったです。

Googleからの案内

いまどこ?が使っているGoogleのプッシュサービスについて、ある古いAPIがもうじき使えなくなるから更新して下さいって案内が来ていました。え、そんなのあったんですか?という感じで、全く意識していませんでした。調べた限り僕はその古いAPIを使っていないようです。が、Googleのプッシュサービスを使いはじめた初期の頃からGoogleの公式ページでその古いAPIを使うようにはなっていなかったと思います。なんか案内が不適切な気がしています。

じきに真相がはっきりするといいのですが。

住所を引けなくなるバグの対策で

Android OSには、位置から住所を引く機能に深刻なバグがあります。このバグは発生すると(その状態になると)再起動以外に直す方法がないと言われています。このバグの対策方法として、別の手段で位置から住所を引く、というのがGoogleのフォーラムに紹介されていて、僕はしばらく前に、いまどこ?にそれを実装しました。僕の場合は、再起動後にしばらく(長くても1週間)使っているとこのバグが発症しますが、その別の手段で住所を引くのはまあうまく働いています。たまに住所が引けないとか、おかしな住所(日本人じゃない人が書いたような住所みたい)を返すことがありましたが、この対策(代替手段)を使わないよりはずっとましです。何しろ正規の手段では全く住所が引けないのですから。

でもちまたではこの代替手段が使えなかった、という場合がそこそこあるようです。クラッシュレポートにその記録がありました。頻度は低いようですが、ネットワーク系の問題でHTTPアクセスの途中で何かのエラーが起きているようです。タイムアウトとか、DNSが引けなかったとか。まあしょうがないですね。(ちなみに、クラッシュレポートに記録ある=クラッシュした、ではありません。危ない例外、エラーは静かに処理した上でクラッシュレポートを書いています。そういう問題があったことを知るためにです。)

新規インストールに問題がありました

家族モードの導入に思わぬ落とし穴がありました。新規インストール(引き継ぐ設定がない状態)だと暗証番号の入力後に暗証番号が壊れていると間違った判断をしてしまうのと、新規メンバー登録時に家族モードだと暗証番号が正しく記憶されないというものです。ボロボロでした。

家族モードへの対応は慎重に行ったつもりでしたが確認事項が漏れていました。反省しています。