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

Ale*_* Le 2 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
Run Code Online (Sandbox Code Playgroud)

我做了一些研究,其中一个Ti家伙Don Thorp回答了类似的问题

您使用的文件有多大.这是问题的源头的复杂性,而不是源正在做的事情.这已在1.5中解决,并且可通过tiapp.xml设置配置应用程序以提高堆栈大小.简化源代码是最好的方法,但在某些情况下,您将不得不提升堆栈. -

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

谢谢!

Ale*_* Le 5

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

<property name="ti.android.threadstacksize" type="int">32768</property>
Run Code Online (Sandbox Code Playgroud)