Firefox3.6で空のURLをloadしてもIOErrorEventが取れない

Firefox3.6だけプリローダーが終了せず原因を調査したところ、
XMLから受け取った外部画像のパスが空のとき、
IOErrorEventによる読み込み失敗が取れていなかった。
IEやChrome,Firefoxも3.5等では読み込み失敗として取れていたのに・・・、
ハマったのでメモしておく。

Firefox3.6で読み込み失敗が取れない – wonderfl build flash online

2880pxより下にあるダイナミックテキストが表示されないの対処法

この大きさのFlashを作ることはあまりないかもしれませんが、対処方法のメモ書き。
外部XMLを読み込み表示するFlashのエンベッドwmodeを変更したところ、
下の方のテキストが表示されなくなりました。
調査したところ発生条件は、

  • FlashPlayer9以下
  • wmodeが”transparent”
  • テキストフィールドへ動的に文字列を流し込んでいる
  • そのテキストフィールドのY座標が2880px以上

でした。
対処法は以下のいずれか。

  1. 書き出し&閲覧Playerバージョンを10以上にする
  2. フォントを埋め込む
  3. cacheAsBitmap = true (ビットマップとしてキャッシュにチェック)

Flashの表示オブジェクトの限界が縦横2880pxらしいのでそれが関係していると思われる。
FlashPlayer10からはその制限が緩和されているため(参考)、
試してみたところテキストが表示されました。

該当のテキストフィールドにフォントを埋め込んでしまうのも効果あり。

表示されないだけで、文字列自体は入っているっぽかったので、
テキストを含むMovieClipのcacheAsBitmapをtrueにしたところ、これも効果あり。
今回はレギュレーションがPlayer8で固定、
日本語も入るのでフォントを埋め込むと容量が大きくなりすぎるということで、
3番の方法で対処しました。

HTMLloaderでフルスクリーン時にFlashが表示されない

AIRのHTMLLoaderでウェブページを表示、フルスクリーン化した際に
ページ内のSWFが表示されない現象が起こりました。
どうやらAIRランタイム?SDK?のバグらしい。
1.5→1.5.2にアップデートしたら正常に表示されるように。
以下アップデート手順。

  1. AIRのランタイムの1.5.2(現行バージョン)をインストール。
    アプリケーション記述子の名前空間を以下にように変更。
    xmlns=”http://ns.adobe.com/air/application/1.5

    xmlns=”http://ns.adobe.com/air/application/1.5.2
           
  2. http://www.adobe.com/jp/products/air/tools/sdk/
    よりAIR SDKをダウンロード   
           
  3. ダウンロードしたフォルダ内のファイルを、
    C:\Program Files\Adobe\Adobe Flash CS4\AIK1.5 内のものと入れ替え

     

以上でフルスクリーン時でもHTML内のFlashが表示できるようになりました。

【参考】
http://www.adobe.com/support/documentation/jp/air/1_5_1/releasenotes_developers.htmlhttp://www.starryworks.co.jp/blog/tips/cs4air15air152.html