NativeScript 1.3 现已正式发布并可供下载!如果您正在使用 1.2 或更早版本开发应用,请阅读升级说明。
在此版本中,我们为 NativeScript 添加了更多稳定性、速度提升以及一些重要功能。NativeScript 框架现已更加成熟,我们相信 NativeScript 将是您移动战略的最佳选择。为了与 Apple 最新的公告保持一致,我们也支持 tvOS,并感谢 Apple 团队将我们所需的全部技术作为 tvOS 的一部分!下周将有一篇关于 #tvOS 主题的博客文章发布。
要查看所有修复和代码更改,请访问我们的文档并查看完整变更列表。在 1.3 版本中,团队和社区在过去 7 周内共同修复了 174 个问题。以下是主要亮点。
跨平台抽象现在是一个单独的 npm 插件,以便更容易更新。
引入跨平台动画 API。
支持 CocoaPods
支持 Gradle 构建,从而支持最新的原生 Google AAR 库,并实现超快的 Android 构建速度。
与任何开发框架一样,入门往往是最困难的事情。我们与客户和合作的公司进行了多次迭代,以便让 NativeScript 的入门尽可能轻松。新的NativeScript 入门指南现已发布,如果您对我们如何改进有任何反馈或建议,请告知我们 - 对我们来说,让入门体验尽可能顺畅至关重要。特别感谢 @tjvantoll、@jenlooper、@nikolay.diyanov 和 @admatha 将入门体验提升到一个全新的水平。
如果您之前使用过 NativeScript,我相信您知道 ‘tns_modules’ 文件夹。在之前的版本中,此文件夹是 NativeScript 项目模板 的一部分,并包含所有跨平台 API。这样,很难更新或调整这些模块中的修复。现在不再是这种情况!现在此代码遵循我们使用 npm 作为模块的策略,并托管在 https://www2.npmjs.net.cn/tns-core-modules 上。这样,当您需要新版本的模块时,只需执行单个命令
npm update tns
-
core
-
modules@$NEW_VERSION
动画是 NativeScript 创意门户 中最受欢迎的功能。我们花费了相当长的时间来实现我们认为易于使用的 API,以便您在应用中实现跨平台动画。
关于如何在 GitHub 上采用何种方法以及如何实现 API,我们进行了长时间的讨论,如果您有兴趣了解更多信息,请点击此处。
这对 NativeScript 来说是一个巨大的补充,但我先告诉您什么是 CocoaPod,因为我相信你们中的许多人可能并不知道。 CocoaPods 是 Swift 和 Objective-C iOS Cocoa 项目的依赖项管理器。它拥有超过一万个库,可以帮助您优雅地扩展项目。您可以查看 http://cocoacontrols.com 库,它目前包含 3894 个 UI 组件。这是一个您可以直接在 NativeScript 中使用的海量组件数量。
与 NativeScript 一样,CocoaPods 也是开源的,可以在 https://github.com/CocoaPods/CocoaPods/ 上获取。
为了与 CocoaPods 无缝协作,我们需要更新我们的 CLI 工具以支持 Xcode 工作区。现在使用 pod 非常容易,只需配置即可。由于这是一个非常重要的主题,因此有一篇专门的博客文章对此进行了介绍。 请阅读如何在 NativeScript 中使用 CocoaPods。
这是对 NativeScript 的另一个重大补充,但我首先解释一下什么是 Gradle 以及它如何让您更轻松地使用,因为这主要用于 Android 生态系统。
Gradle 是 Android 项目的*相对*较新的构建系统。您可能知道,Google 正在开发他们自己的 IDE,称为 Android Studio,用于构建原生 Android 项目,并且他们正在从 Eclipse 和基于 ant 的项目中迁移。作为替代方案,他们现在使用 Gradle 作为构建系统,这是在使用原生 Android 项目时推荐的构建系统。大多数新的 Google 库(例如 Google Design 库)现在仅以 Gradle 库的形式提供,因此我们也应该迁移到 Gradle。
这听起来可能只是 NativeScript 的内部更改,但对您来说有两个主要的好处。
首先,Android 构建现在速度非常快,因为 Gradle 实际上支持增量构建。
其次,您现在可以使用 AAR Google 包,这是 Google Android 团队推荐的在 Android 中使用原生库的方式。
请阅读 Todor Totev 的专门博客文章,了解更多关于 Gradle 构建的信息。
这些是主要的新功能,但正如我一开始所说,我们做了大量的努力来稳定框架。客户已经实现了多个实际场景并将其部署到市场 - 所有这些都导致 NativeScript 框架更加成熟。
请关注 @NativeScript 的 Twitter 或 关注 NativeScript GitHub 库,以获取团队的最新更新。
我们非常乐意听取您的反馈,因此请在下面的评论部分分享您的想法并提供任何反馈。