Releases: vimfung/LuaScriptCore
Release 1.3.1
- 新增类型导入功能,让原生类型直接导入到Lua中使用,如
Person = ClassImport('Person')
。 - 新增iOS的Swift版本和Unity3D下获取和设置全局变量功能。
- 调整动态声明类方法和实例方法形式,类方法声明不变,实例方法由原来如
function Person:init () end
改为function Person.prototype:init () end
- 修复Android内存泄露问题
Release 1.3.0
-
OSX和iOS平台下增加Swift版本,可以使用Swift来开发LuaScriptCore了。
-
Android平台下增加onException方法用于捕获Lua运行时异常。
-
Unity3D下增加导出模块和类到Lua中。
-
面向对象模块增加实例对象的super属性可以访问类的父类实例方法,用于重载方法时使用,如:self.super.init(self);
-
面向对象模块增加检查对象类型方法instanceOf和检测继承关系方法subclassOf
-
面向对象模块中的Lua类型增加类型名称name属性。
-
修复OSX和iOS平台下Lua传入包含二进制数据的字符串无法自动转换为NSData问题。
-
允许面向对象模块的创建对象方法create传入参数并在实例对象的init方法中取得。
-
修复Android平台下Lua数组元素或者字典元素超过512个时栈溢出问题。感谢John的反馈^_^
-
修复Table类型作为参数传入时,不是作为最后一个参数传入时发生异常。
-
修复Android平台下报告没有找到localeconv符号问题。
-
优化对象实例调用时不采用:号调用方法产生异常的提示。
-
修复Android平台下无法在低于Api19的机器运行问题。
-
修复Android平台下对象实例方法没有继承问题。
-
iOS、OSX、Android平台增加设置和获取全局变量接口方法。
-
优化方法返回值的实现,允许Lua->原生以及原生->Lua返回多个返回值。
-
修复Android平台下,调用类的方法或实例方法时,如果传入类型与声明类型不匹配导致崩溃问题。
-
修复iOS、OSX平台下的evalScript、callMethod接口以及Function的invoke接口设计不统一问题。
-
修复Android平台下Module的方法传入Table类型时崩溃问题
-
修复Android平台下调用evalScript无法require资源包中的文件
-
修复Android平台下多个模块和类中同名存静态方法调用失效问题。
-
修复从lua回传多层级table时崩溃问题。
-
修复原生对象传入lua时没有调用init方法问题。
-
修复对象释放时出栈问题。
-
修复一些已知问题和优化性能。
Release 1.2.1
- 修复Android平台下使用evalScriptFromFile方法返回值为nil问题。
- 优化evalScriptFromFile方法,允许可以只传入资源目录下的lua文件名称来解析指定脚本。
- 增加Unity平台的接入,支持导出iOS、OSX以及Android应用,目前只支持Mac OS X下编辑器的开发调试。
Release 1.2.0
1、优化Function和Object的内存使用,提升执行效率。
2、允许Object的实例对象可以动态添加属性或者方法。
Release 1.1.2
1、修复Function对象invoke时导致脚本终止执行问题。
2、修复iOS中Object释放时崩溃问题。
3、优化内存使用,修复内存泄露问题。
Release 1.1.1
修复对象在lua和原生层中相互传递时,部分方法处理行为不一致问题。
Release 1.1.0
1、在面向对象模块中的类型映射使用新的方法实现。
2、让原生类型可以轻松地穿越在lua层和原生层中。
3、允许在lua中可以扩展类型的方法和属性,例如为Object添加一个printObject的方法。
4、允许lua中的方法传入原生层中,并且允许原生层触发方法的调用和传递参数。
5、为类实例添加两个默认参数init和destroy方法,分别在对象初始化和释放时被触发(子类可改写)。
Release 1.0.0
- 支持iOS、Android 和 OS X三个平台。
- 支持Lua与原生层的数据交互。