我有一个使用 Flash CS6 开发的 Flash 项目 (AS3)。我正在为 iOS 设备、Android 设备、桌面(air)和网络浏览器(swf)进行开发。到目前为止,我已经能够使用单个代码库,例如在发布到每个代码库时只进行一些修改 -
当用户按下使用 flash.desktop.NativeApplication 类的主页按钮时,我有一些代码可以处理在移动设备上退出应用程序。显然,这对于桌面或 swf 版本来说是不需要的,所以当我发布这些内容时,我会注释掉相关的导入语句和监听按下的主页按钮的代码。
我还有一个加载一些设置的 config.xml 文件,对于 swf,它与 swf 文件不在同一目录中,因此在加载 swf 对象时传入此配置文件的位置(flashvars)。但是对于所有其他版本,该文件的路径只是 config.xml,所以我注释掉处理 flashvars 加载的代码 -
allFlashVars = LoaderInfo(this.root.loaderInfo).parameters;
webroot = String(allFlashVars["webroot"])
需要类似步骤的版本之间还有一些其他差异,我已确保在文档中注明,以供自己和其他开发人员记住。
但是我知道这不是理想的解决方案,并且认为必须有更好的方法来管理它。
有谁知道处理这种情况的任何好的建议/最佳实践?
谢谢