Translate

2010年5月25日火曜日

AndroidのGriViewにたくさんの画像を置く

平均500KBくらいのJPEG画像が8枚、
Amazon S3上においてあって、
これをAndroidのGridView上にサムネイルっぽく載せたかったのだけど..

OutOfMemoryでがんがん落ちる..

HT-03Aではせいぜい画像2枚までが限界で
それ以上だと画面遷移で3分以上かかってしまう..


Andoridは現在ヒープの上限を16MBにしている
というブログは読んだことがあるが、
実質データサイズ1MBくらいが限界のようだ。

で、Androidで処理するのはあきらめ、
Google App EngineにS3のデータを取得して
サムネイル画像に変換して返すサービスを1つつくって、
これをAndroidから使うように変更した。

かっこわるいがしょうがない。

これでグリッドを表示するのに3分30秒かかっていたのが
16秒に短縮し出来た。

Android玄人の皆さんはNDKを使うのかな..

2010年5月19日水曜日

GridView(Android)でページングする場合の更新方法













AndroidでGridViewをつかったページャをつくった。
各グリッドのイメージ表示にはBaseAdapterを継承して表示させている。このあたりはサンプルをGoogleって対応した。

GridViewへ画像データを表示させるのはサンプルが見つかったが、前ページ、次ページ画面のようなページングを行うためには、データが更新されたことをGridViewにつたえて再描画してもらわないといけない。

こういうときは、データを更新してから、
BaseAdapter#notifyDataSetChanged();
を次ページ・前ページボタン押下リスナ内に書いておけば
更新してくれる。

英語が苦手なので、このメソッドを見つけるのに3日くらいかかってしまった...

o1-previewにナップサック問題を解かせてみた

Azure環境上にあるo1-previewを使って、以下のナップサック問題を解かせてみました。   ナップサック問題とは、ナップサックにものを入れるときどれを何個入れればいいかを計算する問題です。数学では数理最適化手法を使う際の例でよく出てきます。 Azure OpenAI Se...