编辑:问题解决了:App.swf使用LZMA压缩,这是错误的。 SWF文件必须是纯文本。
我正在开发跨平台的AIR应用程序,我遇到了一个错误:“304:初始窗口内容无效(RuntimeError)”当我在连续集成上运行打包时机器(Windows),但在本地计算机(Windows和Mac)上一切正常。 这是我的应用程序XML描述符文件的代码:
<?xml version="1.0" encoding="utf-8" ?>
<application xmlns="http://ns.adobe.com/air/application/3.6">
<id>com.test.App</id>
<filename>App</filename>
<name>App</name>
<versionNumber>0.0.0</versionNumber>
<initialWindow>
<content>App.swf</content>
<visible>true</visible>
<aspectRatio>landscape</aspectRatio>
<autoOrients>false</autoOrients>
<fullScreen>true</fullScreen>
<renderMode>direct</renderMode>
</initialWindow>
<iPhone>
<InfoAdditions>
<![CDATA[
<key>UIDeviceFamily</key>
<array>
<!-- iPhone and iPod touch devices -->
<string>1</string>
<!-- iPad devices -->
<string>2</string>
</array>
<!--<key>UIStatusBarStyle</key>-->
<!--<string>UIStatusBarStyleBlackOpaque</string>-->
<!--<key>UIRequiresPersistentWiFi</key>-->
<!--<string>YES</string>-->
]]>
</InfoAdditions>
<requestedDisplayResolution>high</requestedDisplayResolution>
</iPhone>
<android>
<manifestAdditions>
<![CDATA[
<manifest android:installLocation="auto">
<uses-permission android:name="android.permission.INTERNET"/>
<!--<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>-->
<!--<uses-permission android:name="android.permission.READ_PHONE_STATE"/>-->
<!--<uses-permission android:name="android.permission.VIBRATE"/>-->
<!--<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>-->
<!--<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>-->
<!--<uses-permission android:name="android.permission.WAKE_LOCK"/>-->
<!--<uses-permission android:name="android.permission.CAMERA"/>-->
<!--<uses-permission android:name="android.permission.RECORD_AUDIO"/>-->
<!--<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>-->
<!--<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>-->
<!--<uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>-->
<!--<application android:enabled="true">
<activity android:excludeFromRecents="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>-->
</manifest>
]]>
</manifestAdditions>
</android>
</application>
应用程序SWF的名称与值相同:“App.swf”。 以下是我如何运行ADT工具来打包应用程序:
C:/tools/flexsdk/4.6.0_mobile_win/bin/adt -package -target apk-debug -storetype pkcs12 -keystore C:/certs/android_cert.pfx -storepass password C:/build/app/bin-debug/android/App.apk C:/build/app/script/App-app.xml C:/build/app/bin-debug/android/assets.xml C:/build/app/bin-debug/android/assets C:/build/app/bin-debug/android/App.swf
任何想法都会非常有帮助的人:)