返回博客首页
← 所有文章

NativeScript 1.0.0 现已推出

2015年5月4日 — 作者 Valio Stoychev

在发布 NativeScript 首个公开版本仅仅两个月后,我们就收到了大量关于我们迄今为止工作的 积极反馈。我们在 GitHub 上获得了 3000 个星标,Twitter 上(@NativeScript)超过 1500 位关注者,以及我们越来越受欢迎的 NativeScript 公共论坛。这极大地帮助我们验证了我们正走在正确的道路上,并且我们正在努力满足大家的期望。我希望随着每个版本的发布,您都会越来越确信 NativeScript 是跨平台移动应用开发的最佳选择。 

在今天的版本中,我们发布了一些我认为每个移动开发者都会喜欢的基本功能。提醒一下,由于我们对新操作系统的 0 天支持,我们支持最新发布的 iOS8.3,甚至尚未发布的 iOS8.4 测试版!当然,我们也支持 Android 最新 Lollipop 5.0 版本。 

要开始使用新版本,请阅读我们的 NativeScript 入门指南。如果您正在使用旧版框架的应用程序,请阅读我们的 升级到 NativeScript 1.0 的指南 

以下是我们今天发布的快速概览

  1. 示例
  2. 特定分辨率视图
  3. 特定 DP 的图像
  4. 新的 UI 控件
    1. 分段视图 (SegmentedView)
    2. 列表选择器 (ListPicker)
    3. 占位符 (Placeholder)
    4. 页面中的菜单项支持
  5. AngularJS 2 和 NativeScript 概念验证 (POC) 应用
  6. Android 设备上的应用加载时间显著改进
  7. 调试体验得到极大改善

示例
在过去几个月里,我们实现了几个令人印象深刻的示例,您可以在手机上体验它们,最棒的是您可以浏览它们的源代码,因为它们在 GitHub 上是开源的。

让我们从 Telerik NEXT 会议应用程序开始。

01.AllSessions04.2.NavDrawer


这是
TelerikNEXT 会议的官方应用程序,该会议将于 5 月 3 日至 5 日在波士顿举行。您可以从 App StoreGoogle Play 下载该应用程序。 

如果您已经安装了该应用程序,并且对它的性能和用户体验印象深刻,您可能希望浏览该应用程序的源代码并了解它是如何实现的。那么,请不要犹豫 - 源代码位于我们的 GitHub 组织中 - https://github.com/NativeScript/sample-TelerikNEXT 

下一个应用程序称为 Friends,它展示了通过将 NativeScript 与强大的 Telerik 平台集成可以实现的功能。

everlive-friends08baa8d0af794ba19d537bd211b61721

该应用程序在 Telerik 平台上的文章中进行了详细记录,但这里列出了 Friends 示例应用程序中展示的功能的简短列表:

  • 云数据访问 (Telerik 后端服务)
  • 处理文件 (Telerik 后端服务)
  • 用户注册和身份验证 (Telerik 后端服务)
  • 响应式图像 (Telerik 后端服务)
  • 基本应用分析 (Telerik 分析)
  • 跟踪自定义事件 (Telerik 分析)

您可以在这里浏览其源代码
https://github.com/NativeScript/sample-Friends 

我希望这两个新示例能为您提供足够的信息,了解 NativeScript 现在能够实现的功能。我们将在下一个 NativeScript 版本(计划于 6 月中旬发布)中增强这些示例并添加几个新的示例。 

让我们从我最喜欢的这个版本的功能开始,

特定分辨率视图
我们为什么要实现这个功能?

移动应用运行在许多不同的设备上。它们具有许多不同的外形尺寸 - 可穿戴设备、手机、平板手机、平板电脑和大型触摸屏电视。通常情况下,我们需要在小屏幕上仅显示最重要的信息,而在屏幕更大的设备上显示更丰富的内容。虽然我们支持非常丰富的 自适应布局,但在许多情况下,为特定分辨率定义单独的视图会更好。 

如果这听起来很有趣,您一定认为阅读 @KirilStanoev 撰写的关于此主题的深入博客文章值得一读:为您的原生移动应用引入特定分辨率视图 

接下来我想告诉您的功能是使用特定 DP 的图像的选项。

特定 DP 的图像
我们为什么要实现这个功能?

如上一节所述,不同的设备具有不同的外形尺寸和不同的 DP。这意味着您不能对所有外形尺寸使用单个图像,因为它在 DPI 比例较高的设备上会显得太小,而在 DPI 比例较低的设备上会显得太大。在 Android 文档中对该问题进行了很好的解释。 

AngularJS 2.0 - 初始集成步骤
我们使用 NativeScript 的目标之一是让 Web 开发人员能够非常轻松地开始编写 NativeScript 应用。实现此目标的一种方法是在 NativeScript 中启用您喜欢的 JS 库。 

AngularJS 是 Google 推出的一个广受欢迎的开源 Web 开发框架。在过去的一年中,人们做了大量工作来准备将该库用于移动应用程序。您可以在 此处阅读更多关于 AngularJS 2.0 的信息。 

在过去几个月里,我们与团队紧密合作,帮助他们启用他们的抽象来支持非 DOM 环境。这是我们将在下一个 NativeScript 版本中进一步探讨的主题。以下是在 此处提供的一个屏幕截图视频,展示了我们现在能够实现的功能。请在 这个开源存储库中探索我们完成的概念验证应用程序。请在我们的 讨论线程中留下评论,让我们知道您的反馈。

增强的调试支持

  • 我们现在通过为“tns debug ios”提供“--emulator”开关来支持在模拟器上进行调试。
  • 我们现在通过为“tns debug ios”提供“--debug-brk”来支持在任何 JavaScript 执行之前附加调试器。
  • 如果附加了调试器,我们将尝试在应用程序崩溃时冻结应用程序,以便调试器可以用来检查错误。
  • 如果从 JavaScript 调用的代码中抛出 Objective-C 异常,它将被包装在 JavaScript 错误中并报告给调试器。
  • 我们现在支持“--print-app-output”,它会将应用程序的所有控制台输出记录到终端(这包括 console.log 以及任何本地跟踪,例如 NSLog)

接下来会发生什么
我们认为现在是开始使用 NativeScript 构建应用程序的好时机,但我们也迫不及待地想与您分享即将在 6 月发布的下一个版本中提供的功能。 

我们下一个版本的重点是进一步改进开发人员体验,并根据我们灵活的架构启用更多应用程序场景。以下是我们将在其上开展工作的相关问题的链接:
支持 iOS 中的第三方静态库
支持 NativeScript 插件
实现跨平台推送通知模块
支持 CLI 中的实时同步
优化 Android 构建时间
添加对 iOS 扩展的支持并启用 Apple Watch 支持
启用应用程序内的错误报告 

我希望这能为您提供足够的理由开始使用 NativeScript 构建应用程序。我们很乐意听到您的反馈。请通过 Twitter @NativeScript 与我们保持联系,或访问我们的 论坛并与我们交流。