直接catwhiskerには関係ないのだが、最近Adobe Airを使ってスマートフォンアプリを作っていて久々に原因不明な現象に出くわした。
その原因不明な現象を説明する前に今回のAdobe Airを使ったスマートフォンアプリ制作について簡単に説明

  1. 普通にブラウザで動くFlashアプリを作る
  2. ターゲットデバイスをスマートフォン用に変更
  3. Flash上でプレビューを行ってデバッグ
  4. 3が出来たら実機に転送して実機デバッグ
  5. ストアに登録して完了

と言うのが主な流れになる。
で、今回はまったのが3の部分で前ふりとしては元々は別の人が作成してストア登録まで完了しているアプリのバージョンアップを当方が行った作業と言う事。
で、具体的な現象は以下の通り。

  • Flash上でプレビューを行おうとすると「ムービープレビューの起動に失敗しました。」のエラーが出て表示されない。
  • エラーダイアログを消すと出力パネルに下記のエラーが表示される
    ムービープレビューが終了しました。
    Adobe (R) AIR (R) Debug Launcher (ADL)
    Version 3.4.0.2540
    Copyright (c) 2008-2012 Adobe Systems Incorporated. All Rights Reserved.
    The -extdir argument must specify an existing directory.

他の環境ではちゃんとプレビュー出来ていたのでコードがおかしいと言う事はまずあり得ない。
当初は同時にデバッガで使われるAdobe Airのアップデートが表示されるのでそれが原因かと思ったが、いろいろ調べてゆくと「開発環境がWindowsの場合Adobe Airのファイルとフォルダには2バイト文字が含まれるとデプロイ(書き出し)に失敗する」と言う記述が見つかった。ところが、今回の場合はソースファイルは「D:\test\flash_app.fla」と言う感じで2バイト文字を含んでいない。

とここまで引っ張ってきていい加減飽きてきたのでそろそろ種明かし。