提前道歉,问这些愚蠢的问题,但是: 在Workflow for creating AIR applications for mobile devices中,他们对
说AIR应用程序描述符文件的含义是什么?它们是指application.xml吗?
2.5命名空间的含义是什么? 我在application.xml中看到了应用程序xmlns =“http://ns.adobe.com/air/application/2.0”。 如何获取最新的命名空间?
编译应用程序意味着什么?我正在使用Aptana并且没有编译菜单选项,所以它们是否意味着使用Export Adobe AIR包按钮。
将应用程序打包为Android程序包是什么意思?这是相同的导出Adobe AIR包按钮吗?我没有在Aptana的任何地方看到.apk。
答案 0 :(得分:4)
假设你有一个航空应用程序:HelloWorld
。
通过应用程序描述符文件,它们表示HelloWorld-app.xml
文件,您可以在其中配置应用程序的行为和基本显示(大小,图标等)
以2.5命名空间表示,您必须拥有current air (2.5 or higher) runtime。当前的sdk版本是2.6,downloadable from here.
我建议您使用(当前最新的)Flex Hero SDK,它已经与air2.5运行时绑定,这样您就不需要手动合并flex和air SDK。
然后设置环境以使用这个新的空气sdk,从那时起,在应用程序描述符xml中将生成新版本。
通过编译他们的意思是......好吧:编译。使您的机器可以理解您的代码。此时应使用mxmlc(不是compc)。 More about it here。 IDE通常在后台执行此操作,例如。在每次保存操作时,或在运行之前,所以可能你不应该打扰。
在编译代码之后,您将在bin或bin-release或bin-debug文件夹中拥有正确的swf(启用或不启用调试)。
通过将应用程序打包到Android包中,它们意味着您必须创建一个.apk
文件(由android使用的文件和应用程序包)。您可以使用adt命令创建apk文件:
adt -package
-target apk
-storetype [yourstoretyp]
-keystore [yourkeystore] HelloWorld.apk HelloWorld-app.xml HelloWorld.swf
注意强>
在您的应用程序描述符中,visible
标志应设置为true:
<visible>true</visible>
您的androidManifest.xml文件必须嵌入到您的空中应用程序描述符xml中。示例嵌入式Android清单是:
<application>
[...]
<android>
<manifestAdditions>
<![CDATA[
<manifest android:installLocation='auto'>
<uses-permission android:name="android.permission.INTERNET" />
<supports-screens android:normalScreens="true"/>
<uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>
<application android:enabled="true">
<activity android:excludeFromRecents="false">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
]]>
</manifestAdditions>
</android>
[...]
</application>