如何增加Titanium Android应用程序的堆栈大小

时间:2011-03-07 08:06:25

标签: android emulation titanium appcelerator

我正在使用Titanium来构建我的应用程序,它在iPhone上运行良好。今天是我第一次在Android模拟器中运行它,它失败了。我挖掘了错误日志,发现了这个

[TRACE] E/TiJSError( 326): (kroll$1: app://app.js) [274,5815] ----- Titanium Javascript Runtime Error -----
[TRACE] E/TiJSError( 326): (kroll$1: app://app.js) [1,5816] - In file:///android_asset/Resources/app/models/base.js:107,0
[TRACE] E/TiJSError( 326): (kroll$1: app://app.js) [2,5818] - Message: Too deep recursion while parsing
[TRACE] E/TiJSError( 326): (kroll$1: app://app.js) [2,5820] - Source: null
[TRACE] E/KrollContext( 326): (kroll$1: app://app.js) [149,5969] Error: null
[TRACE] E/KrollContext( 326): java.lang.NullPointerException

我做了一些研究,其中一个Ti人Don Thorp回答了similar question

  

您使用的文件有多大。   这是源头的复杂性   这是问题,而不是什么   来源正在做。这一直是   在1.5中解决,是应用程序   可通过tiapp.xml设置进行配置   提高堆栈大小。简单化   来源是最好的方法,   但在某些情况下,你必须这样做   堆栈。 -

但我还没有找到如何在tiapp.xml中增加堆栈大小的任何地方。有谁知道这个属性?

谢谢!

1 个答案:

答案 0 :(得分:5)

在深入研究了titanium_mobile源码,特别是TiApplication.java文件后,我能够增加stacksize。基本上将这一行添加到根节点之间的任何位置的tiapp.xml。使用32K堆栈大小,应用程序能够解析所有脚本。

<property name="ti.android.threadstacksize" type="int">32768</property>