Flash CS6を使用して開発しているFlashプロジェクト(AS3)があります。私はiOSデバイス、Androidデバイス、デスクトップ(air)、およびWebブラウザー(swf)用に開発しています。これまでのところ、たとえば、それぞれに公開するときに、わずかな変更を加えるだけで単一のコードベースを使用することができました-
ユーザーがflash.desktop.NativeApplicationクラスを使用するホームボタンを押したときにモバイルデバイスでアプリケーションを終了することを処理するコードがいくつかあります。明らかに、これはデスクトップやswfバージョンには必要ないので、これらを公開するときに、ホームボタンが押されるのをリッスンする関連するインポートステートメントとコードをコメントアウトします。
また、いくつかの設定をロードするconfig.xmlファイルがあります。swfの場合、これはswfファイルと同じディレクトリにないため、swfオブジェクトがロードされるときにこの構成ファイルの場所を渡します(flashvars)。ただし、他のすべてのバージョンでは、このファイルへのパスは単にconfig.xmlであるため、flashvarsのロードを処理するコードをコメントアウトします-
allFlashVars = LoaderInfo(this.root.loaderInfo).parameters;
webroot = String(allFlashVars["webroot"])
バージョン間には他にもいくつかの違いがあり、自分自身と他の開発者が覚えておくために、ドキュメントに必ずメモしておく同様の手順が必要です。
しかし、これは理想的な解決策ではないことを私は知っており、これを管理するためのより良い方法があるはずだと思います。
そのような状況に対処するための良いアドバイス/ベストプラクティスを知っている人はいますか?
ありがとう