2009/08/15

Androidアプリ: 「日本のお天気レーダー」シーク動作を高速化

新たに画像の先読み・キャッシュ機能に対応して、シーク動作を高速化しました。
アプリを起動すると、まず最新画像を読み込んで表示します。その後、バックグラウンドで過去3時間分の画像を先読みします。

先読み中にシークした場合は、その時刻の画像のダウンロード・表示が優先されます。非同期処理の実装にはAsyncTaskを使っているのですが、先読みを小分けにすることで、UI操作に素早く反応できるようになっています。

JPEGファイルがメモリにキャッシュされると、それ以降ネットワークにアクセスしなくなるので、以前と比べて高速にシークできるようになりました。ただ、JPEGのデコードにそれなりに時間がかかるので、思ったほど劇的には高速化しませんでした。残念。

デコード後のBitmapをキャッシュする方法も試してみたのですが、さすがにメモリが足らずに安定して動作しないので断念。

これで、Android Marketのユーザーコメント欄にあったリクエストには対応したつもり。

2 件のコメント:

  1. おとといあたりより、起動時にエラーが生じ、ソフトの起動が不可能となっています。いつも便利に利用させてもらっていたので、復旧を期待します。

    返信削除
  2. ご連絡ありがとうございます。

    サーバー側のURLが変更されていました。
    修正版をリリースしたので、アップデートすれば以前と同じように表示可能になります。

    今後も不具合などありましたら、お気軽にご連絡ください。

    返信削除