2009年6月4日木曜日

これは参考になるぞ

アップル ヒューマンインタフェースガイドライン

Adobe AIRにハマル--メモリ管理編

画像をAPI経由で読み込んで、Papervision3Dを使って、本をめくるようなアプリを作成中
読み込んだ画像を、ページに貼り付けるのはいいが、複数の本を開いていくと、徐々にメモリが肥大化、原因は、いらなくなったらremoveすればよいのはわかっているが、どうにもうまくいかない。
どうしよう・・

備忘録的に参考URLを・・・
http://wakaz.info/2008/12/actionscript30_1.html
http://level0.kayac.com/2008/11/memory_leak.php

と思っていたら・・
にヒントが・・・結局

var bmp:Bitmap;
var bmd:BitmapData;
for each (var obj_loader:Loader in _arryLoadFile) {
obj_loader.unload();
if (obj_loader.content is Bitmap){
bmp = Bitmap(obj_loader.content);
bmd = BitmapData(bmp.bitmapData);
bmd.dispose();
  bmp = null;
  bmd = null;
}
obj_loader = null;
}

で解決か?

Adobe AIRにハマル--IOError#2032

URLLoaderで、APIへアクセスすると、IOErrorEventで、#2032エラーが返される
100%失敗するのではなかったので、はまっちゃいました。

結局、
http://kb2.adobe.com/cps/000/fdc7b5c.html
にあった、
Pragma: no-cache
Cache-control: no-cache,max-age=0,must-revalidate
をAPI側に実装したら解決。

いまさらASPなら
Response.AddHeader "Pragma","No-Cache"
Response.AddHeader "Cache-control","no-cache,max-age=0,must-revalidate"
を設定

<その他参考サイト>
http://blog.webkai.net/category/Flash.html
http://labs.digitrick.net/article/200809030708.html#more
http://www.judahfrangipane.com/blog/?p=87