AS3 - iOS应用程序在断点处崩溃

时间:2016-08-22 14:03:09

标签: ios actionscript-3 air segmentation-fault breakpoints

我在iOS设备和模拟器上调试AIR应用程序时遇到了非常烦人的问题。

简单地说,当我调试应用程序时,应用程序崩溃,并在断点处停止。然后选择具有断点的行一秒或更短时间然后应用程序消失。

这是我在最后一次闪光跟踪后从模拟器获得的一些日志:

  

断言[30178]:断言失败:15G31 13E230:断言+ 16726 [1BD9E3D0-5485-3412-86B2-4BE50C825E80]:0x1

     

SpringBoard [30174]:HW kbd:无法将(null)设置为键盘焦点

     

SpringBoard [30174]:BSXPCMessage收到错误消息:连接无效

     

---最后一条消息重复了一次---

     

com.apple.CoreSimulator.SimDevice.EE317320-40C9-4513-9BE9-02611D6DD722.launchd_sim [30158](UIKitApplication:com.my.app.id [0x31d1] [30651]):由于信号退出服务:分段错误:11

     

断言[30178]:断言失败:15G31 13E230:断言+ 16726 [1BD9E3D0-5485-3412-86B2-4BE50C825E80]:0x1

     

SpringBoard [30174]:应用程序'UIKitApplication:com.my.app.id [0x31d1]'崩溃。

     

断言[30178]:断言失败:15G31 13E230:断言+ 16726 [1BD9E3D0-5485-3412-86B2-4BE50C825E80]:0x1

     

assertiond [30178]:notify_suspend_pid()失败,错误7

就是这样。

有趣的是,它可能不会发生几个月,然后突然每个断点都会导致崩溃。

据我所知,设备,iOS版本和AIR版本并不重要。

你们有没有遇到过这个问题?你对此有什么解决方案吗?

1 个答案:

答案 0 :(得分:0)

AIR编译器在以下方案中存在已知问题:

  

如果基类函数不使用任何参数并且派生类中的重写函数没有,那么通过基类引用调用任何函数都会导致应用程序突然终止。

如果需要32位支持,可能需要降级:

  

但是,随着AIR 20的发布,Mac OS X上仅提供了64位运行时动态库。有关详细信息,请参阅AIR 20发行说明。

     

正在运行需要32位ANE的应用程序的某些用户可能希望降级到支持32位运行时动态库的较低AIR版本。

Flash调试器(fdb)与AIR Debug Launcher(ADL)结合使用可能会提供更多信息:

  

使用AIR Debug Launcher(ADL)在开发期间运行基于SWF和基于HTML的应用程序。使用ADL,您无需先打包并安装应用程序即可运行该应用程序。默认情况下,ADL使用SDK附带的运行时,这意味着您不必单独安装运行时以使用ADL。

     

AIR支持直接调试,因此您不需要运行时的调试版本(就像使用Adobe®Flash®Player一样)。要进行命令行调试,请使用Flash调试器和AIR Debug Launcher(ADL)。

     

Flash调试器分布在Flex SDK目录中。本机版本(例如Windows上的fdb.exe)位于bin子目录中。 Java版本位于lib子目录中。 AIR Debug Launcher adl.exe位于Flex SDK安装的bin目录中。 (没有单独的Java版本。)

     

注意:您无法直接使用fdb启动AIR应用程序,因为fdb尝试使用Flash Player启动它。而是让AIR应用程序连接到正在运行的fdb会话。

<强>参考