2016 年 6 月 27 日
Corona SDK、Enterprise 和 CoronaCards 新公开发布
Corona 的新公开发布版来了!对于 Corona Labs 工程师来说,这是忙碌的一年。从新插件到新功能等等,我们的每日构建中投入了很多内容。
首先,增强功能包括
- 支持使用Spine来使用网格。
- 支持 macOS Retina 和 Windows 高分辨率屏幕。
- 支持 system.canOpenURL()。
- 支持 network.request() 中的 HTTP PATCH 方法。
- Corona Enterprise 的 Android Studio 支持。
- Android 的 Multi-Dex 支持。
如果您喜欢使用公开发布版而不是每日构建版,现在是时候利用所有重大更改了。下载此公开发布版以获取以下所有功能和更新
核心和跨平台功能
- 现在通过 display.newMesh() 支持网格。
- 多个过滤器和着色器更新为可与透明度一起使用。
- system.canOpenURL() API 现在可在所有平台上使用。
- network.request() API 允许使用新的 HTTP 动词。除了 GET、HEAD、POST、PUT 和 DELETE 之外,您还可以使用 PATCH 或其他动词。
- 添加了一个新的 json.decodeFile() API,该 API 读取 JSON 文件并将其转换为 Lua 表。
- 新的 system.newEventDispatcher() API。
- display.newEmitter() 和 video:load() API 现在允许您使用资源目录以外的目录。
- 用于纹理管理的新 API(graphics.newTexture() 和 graphics.releaseTextures())。
- LuaSockets 更新到“3.0-rc1”,它支持 IPv6 并修复了很多错误。这是更新 OpenSSL 插件并满足 Apple 要求所必需的。
- widget.newScrollView() 的细微改进。
- 更新了 transition 库,其中包含围绕暂停、恢复和取消转换的细微修复。
- 现在,只需通过文件名即可在所有平台上加载自定义字体。
Corona 模拟器
- macOS(Retina)和 Windows 屏幕(DPI 感知)的高分辨率屏幕支持。
- 控制台改进。
- 更新了用于打开项目的文件处理,包括打开目录和将文件拖到 Corona 模拟器图标以打开项目。
- native.showAlert() 在 Windows 上的改进。
- 如果插件是必需的并且需要在
build.settings
中配置,Corona 模拟器现在会警告您。 - 当文件名因大小写敏感而不匹配时,您现在会在 Corona 模拟器中收到警告。
Android
- Multi-Dex 支持。
- Android 6.x 权限处理的改进。
- 支持 Enterprise 的 Android Studio 构建。
- 现在可以从所有 Corona 定义的目录加载视频。
- 将
libpng
更新到 1.2.56 版本。 - 修复了涉及基于 Java 的插件和应用程序退出的问题。
- 围绕许可支持的改进。
iOS
- 应用内购买 API store.purchase() 现在可以采用项目字符串的表或单个项目字符串,就像其他购买平台的类似 API 一样。
- 在 display.newText() 中正确处理了新行。
- 改进了大型文本对象的渲染。
- 摄像机填充现在可以在每帧无效一次以上。
macOS
- 添加了对 system.setIdleTimer() 的支持。
- 改进了全屏应用程序的处理。
- 改进了调整桌面构建大小时本机对象的处理。
- 改进了大型文本对象的渲染。
- native.newTextBox() 对象现在支持“began”阶段。
- 您现在可以控制桌面构建的窗口标题栏。
- 支持高分辨率 Retina 显示屏。
- 添加了使用 native.setProperty() 显示和隐藏鼠标的功能。
tvOS
- 支持按需资源。
- 远程处理改进,包括“relativeTouch”。
- 改进了大型文本对象的渲染。
Windows Phone 8 / Windows 10 Mobile
- 为 Windows Phone 的 CoronaCards 添加了 Visual Studio 2015 和 .NET 4.6 支持。
Windows 桌面
- 更容易从命令行运行 Corona。
- 添加了对环绕声音频(5.1 和 7.1)的支持。
- 支持具有“DPI 感知”的高分辨率屏幕。
- 添加了使用 native.setProperty() 显示和隐藏鼠标的功能。
- 当您与 native.newTextField() 和 native.newTextBox() 交互时,带有触摸屏的计算机现在会显示一个虚拟键盘。
- 改进了 Corona 模拟器错误消息的格式。
结论
对于任何使用 Corona SDK、Corona Enterprise 或 CoronaCards 的人来说,这都是一个重要的发布版本。您可以在此处下载发布版本 (2016.2906),如果您想了解有关这些功能以及上面未列出的其他功能,请参阅发行说明。
Scottrules44
发布于 6 月 27 日 18:03首先:恭喜公开发布。
其次:关于我之前提交的这个 bug 有什么更新吗 (https://forums.coronalabs.com/topic/63445-tab-bar-bug/)
zed
发布于 6 月 28 日 06:03system.newEventDispatcher() => *喜欢它*
Thomas Vanden Abeele
发布于 6 月 28 日 23:12它具体做什么,或者与旧的自定义事件方式有什么区别?我查阅了文档,但它不是很详细,而且有点难懂。您现在可以超越 displayObjects 吗?
Scottrules44
发布于 6 月 29 日 04:41从代码示例来看,您不必使用 display 对象或 runtime 来分派事件,您只需创建一个属性并将其设置为等于 system.newEventDispatcher
Joshua Quick
发布于 6 月 29 日 12:57是的,您可以使用 Runtime 对象来分派您自己的自定义事件,但随后您必须担心事件名称冲突。
使用 system.newEventDispatcher(),您可以创建自己的私有事件分派器,而不必担心事件名称冲突。这主要有利于想要广泛使用事件的插件/库开发人员,因为现在他们不必再编写自己的事件分派/监听代码。并且像 Runtime 对象一样,此私有 EventDispatcher 也具有对每个事件的多个侦听器的内置支持。
Jeremiah
发布于 6 月 28 日 07:11这是个好消息,Corona 团队!祝贺你们又一轮出色的功能和 bug 修复!
Dan
发布于 6 月 29 日 08:18这真是太棒了,Corona 团队!我想距离上次公开发布已经有一段时间了,但是如果您正在阅读本文,Corona 团队会发布每日构建版本(他们的确是每日),其中修复了很多问题。
sahil
发布于 7 月 7 日 09:30Corona 有自己的物理编辑器吗???
Rob Miracle
发布于 7 月 7 日 11:39不,我们没有。