适用于Android的Air:设备警报后的黑屏

时间:2013-10-22 10:41:00

标签: android actionscript-3 flash air

我确实遇到了问题并且很少继续下去。我即将在三星App Store上发布一个应用程序(使用Air for Android As3创建),并且在应用程序发布之前,应用程序经三星工作人员测试后,我们会得到一个必须解决的问题列表

我确实设法解决了几乎所有的问题,但是一个非常重要的问题超出了我的范围。他们说屏幕转动/保持黑色,在设备警报中断应用程序后返回。这个问题在他们所有的设备上实际发生,包括一个包括我拥有的电话的组(例如Galaxy S3)。

我确实有" OnDeActivate"和" OnActivate"听众在那里暂停应用程序,禁用声音等,如果它失去焦点,最小化等,但我检查了我的设备,我无法重现此错误。这意味着如果应用程序被我的设备中断,我可以毫无问题地恢复它。没有黑屏。

所以问题是:我有什么方法可以解决这个问题吗?我必须在AirForAndroid AS3中工作,所以我猜可能性有限。我能看到的任何线索?任何听众都要设置,或者有没有办法可能会强迫"强迫"用于重新初始化或刷新显示的应用程序?还是听系统报警?非常感谢帮助。提前谢谢!

3 个答案:

答案 0 :(得分:1)

我正在尝试克服同样的问题,我在某处读到,在激活和停用事件上将舞台质量设置为其他内容可能会解决问题。

因此,只需将您的舞台质量设置为中等或停用时的任何不同,并将其设置回激活中所需的状态。

这应该让AIR从黑屏中跳出警报(我希望)

我的应用程序正在使用此修复程序目前正在三星App Store上进行测试。 我希望它能解决它。

答案 1 :(得分:1)

好消息是,翻转舞台质量的肮脏修复似乎对三星有用,但它没有出现在我们应用的最新认证报告中。

顺便说一下,这不适用于stage3D应用程序,这是不同的 这是一个GPU应用程序

答案 2 :(得分:0)

当应用程序失去对Android的关注(进入后台)时,它将丢失上下文,这意味着您将丢失所有创建的图形,缓存对象等。

您没有指定它是什么类型的应用程序。如果您正在使用Stage3D,这意味着您必须重新创建所有纹理,如果您使用普通的旧显示列表,则必须重新创建在运行时创建的任何位图,并至少重绘一次屏幕(所以矢量图形也会重新绘制)。

现在,如果你正在使用Starling,它可以为你重新创建上下文(有一个启用它的标志),尽管你仍然需要重新创建动态创建的位图。