【问题标题】:How can I improve my Adobe Air iOS App start time? [closed]如何改进我的 Adob​​e Air iOS 应用程序的启动时间? [关闭]
【发布时间】:2012-11-07 00:27:37
【问题描述】:

我构建了一个在 Android 设备和 iOS 设备上运行的 Air 应用程序。该应用程序使用 Air 3.4 和 Flex SDK 4.6。在我的 Android 设备上,应用程序在 5 秒后启动。在我的 iPad 设备上,应用程序在 95 秒后启动。

我的应用程序有一个闪屏,它通过 ViewNavigatorApplication 属性 splashScreenImage 启动。这是我在每台设备上看到的内容。

iPad 2 - ipa 大小,11.7M

12 秒黑屏。然后我的启动画面出现了。 90 多秒的闪屏。然后我的第一个视图出现了。

Android Nexus 7 - apk 大小,4.0M

2.5 秒黑屏。然后我的启动画面出现了。 2.5 秒的闪屏。然后我的第一个视图出现了。

任何帮助将不胜感激。

【问题讨论】:

  • 如果没有应用程序的详细信息,几乎不可能产生任何有建设性或简洁性的内容。对于 Android,我假设您没有根据占用空间大小预先打包 Adob​​e AIR Captive Runtime。
  • 这里有更多关于我的应用程序的详细信息。这是一个视频会议应用程序。所以我必须将 renderMode 设置为“cpu”。该应用程序有 5 个视图和几个弹出窗口。弹出窗口使用 SkinnablePopupContainer。该应用程序使用 Parsley 框架提供的依赖注入在视图之间共享两个小数据对象。该应用程序使用 Web 服务调用来管理会议状态。该应用程序有大约 400k 使用 MultiDPIBitmapSource 渲染的图像。该应用程序有 43.3K 的图标,具有应用程序 xml 文件中指定的各种大小。

标签: ios air startup


【解决方案1】:

您可以尝试将图形资源和声音移动到不同的 SWF 文件,并在运行时加载它们。

显然,iOS 中的加载时间很大程度上取决于二进制文件的大小。将内容移动到外部文件意味着应用程序启动时不需要加载这些内容。如果您遵循此路径,请注意从 SWF 加载数据可能会降低应用程序的性能。例如,如果您的应用是游戏,则不要在关卡中间进行...

查看 Adob​​e 的这篇文章: http://www.adobe.com/devnet/flash/articles/combine-swfs-with-swcs.html

请记住,可以在 iOS 上加载 SWF 文件,但不会解释其中的代码。以这种方式加载 SWF 对于动画或矢量图形等图形资源非常有用。您可以创建一个充满符号的库,然后简单地选择您想要使用的符号。

这意味着您的 SWF 不能包含任何 AS 代码。

【讨论】:

  • SWC 是编译时,不能动态加载。 SWZ RSL 将是 Android 的一个选项;但是,对于 iOS 的 AIR,没有这样的选项。
  • 你是对的,我已经相应地编辑了我的答案。至少对于 iOS...
猜你喜欢
  • 2011-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-05
  • 2011-04-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多