如何从现有的FLASH8项目创建Adobe Air应用程序?

时间:2011-01-07 22:30:46

标签: flash air

有没有简单的方法如何使用AS2和多个文件将现有的Flash8项目打包到Adobe Air应用程序?

2 个答案:

答案 0 :(得分:1)

到目前为止,这是最小的app.xml:

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<application xmlns="http://ns.adobe.com/air/application/2.5">
  <id>my.app.id</id>
  <versionNumber>1.0</versionNumber>
  <filename>test-app</filename>
  <description/>
  <name>Test AIR app</name>
  <copyright/>
  <initialWindow>
    <content>test.swf</content>
    <systemChrome>standard</systemChrome>
    <transparent>false</transparent>
    <visible>true</visible>
    <fullScreen>false</fullScreen>
    <aspectRatio>portrait</aspectRatio>
    <renderMode>auto</renderMode>
    <width>646</width>
    <height>468</height>
    <maximizable>true</maximizable>
    <minimizable>true</minimizable>
    <resizable>false</resizable>
  </initialWindow>
  <icon/>
  <customUpdateUI>false</customUpdateUI>
  <allowBrowserInvocation>false</allowBrowserInvocation>
  <installFolder>Test AIR app</installFolder>
  <programMenuFolder>Test AIR app</programMenuFolder>
</application>

其中test.swf可以是FLASH8项目..的确如此,我必须调查一些差异。我不相信没有解决方案。

更新: 所以看起来主要区别在于如何使用相对路径来共享内容 .. 例如,假设我有这样的文件结构:

main.swf
data/level1.swf
data/shared_content.swf

然后,当我想将 importAssets 从shared_content.swf转换为level1.swf(从main.swf加载)时,在Flash播放器中我使用路径' data / shared_content.swf ',但对于AIR,我必须使用' shared_content.swf '。这意味着在AIR中,路径不是相对于根SWF文件,而是相对于正在导入的文件。

其余的似乎到目前为止......如果我发现其他一些差异,我会再次更新。

答案 1 :(得分:0)

除了最简单的情况,。加载到AIR应用程序(始终为AS3)时,AS2脚本行为不正常。我看到的一些问题:Stage.width和Stage.height始终为0,有时 Mouse.addListener不起作用,鼠标滚轮可能无效。脚本越复杂,错误就越多。