NativeScript 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
NativeScript 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
NativeScript 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
NativeScript 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
NativeScript 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将您的跨平台代码翻译成目标平台的代码。

UI 使用 XML 描述,CSS 样式,在编译时将 UI 转化成本地原生代码,最终得到正在的 Native 原生应用。

Telerik 公开了用于创建安卓、iOS和Windows Universal跨平台原生应用的框架,NativeScript 的公共访问权限。

NativeScript既不是一种新型的JavaScript语言,也不是原生功能的封装器,它包括一个JavaScript运行时环境和一种将 JavaScript调用转化为原生调用的机制。用JavaScript(或TypeScript,CoffeeScript等)语言编写应用,之后在安 卓平台用V8,在iOS和Windows Phone上用WebKit JavaScriptCore解释应用。然后,NativeScript运行时环境找到原生的目标API,将JS数据类型转化为相应的原生类型,然后调用原生API,并将得到的结果值返回,具体流程如下图所示:

举例来说,在安卓平台上创建文件对象var file = new java.io.File(path);的步骤如下:

  • 用V8解释代码

  • 根据原数据确定相应的原生方法调用。原数据是在各个平台上预先构建的提供类型和方法签名的全部可用API集合。

  • 类型转换模块将JavaScript的String类型转换为一个java.lang.String对象

  • 运行时环境为java.io.File创建一个代理对象

  • 通过该代理将对原有JS File对象的调用委托给相应的Java实例

据Telerik介绍,与纯原生代码相比NativeScript运行时环境会带来大概10%的性能损失。

NativeScript可以将其所支持平台上的任意原生API作为目标,包括传感器接口API和用Objective C,Java或.NET编写的第三方库。UI组件是原生的,UI事件由在JavaScript代码中声明的原生处理程序处理,如View.OnClickListenerUIControl.addTarget

为了避免开发者需要对三个支持的平台有深入的理解,该框架包含了一个抽象与原生代码连接的NativeScript模块层(NativeScript Modules Layer,NML), 可以自动将JavaScript调用转化为原生调用。NML包含如下模 块:Application,Camera,Color,Console,Data,File System,HTTP,Imaging,Local Settings,Location,Timer,UI。开发者并未受限于只能使用NML,也可以访问任意原生API。

NativeScript其它一些功能简单列示如下:

  • 当前支持平台:iOS7+,安卓4.2+。预计将在4月实现Windows Phone的支持。对安卓早期版本的支持也将很快到来。

  • iOS平台的编译可以在远程完成,无需Mac电脑或iOS工具

  • 开发工作可以在任意IDE中完成。

  • 支持任意跨浏览器的JavaScript库。

  • 支持CSS。

  • 支持MVVM。

  • 即时支持新的原生平台。

部分介绍来自 InfoQ

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (29)

加载中

引用来自“花间一壶酒90”的评论

// 一直再用, 和Angular绝配
闻得到也不详细啊
2019/04/13 14:15
回复
举报
// 一直再用, 和Angular绝配
2018/11/19 10:10
回复
举报
这是reactnative的另外一种形式吗?
2017/10/31 14:40
回复
举报
看来根本没人用,都是两年前的评论
2017/05/04 08:50
回复
举报
看来根本没人用,都是四年前的评论
2019/11/11 09:15
回复
举报
👍
2019/11/11 12:33
回复
举报
看来根本没人用,都是5年前的评论
2020/03/31 10:06
回复
举报
NativeScript 很火的样子,跨平台原生移动开发
2015/03/11 11:27
回复
举报
好东西,试试性能怎样 NativeScript
2015/03/11 22:58
回复
举报
不错.估计要火. NativeScript
2015/03/11 23:19
回复
举报
想到 native.js NativeScript
2015/03/12 00:58
回复
举报
真是狠,把语法编译成目标代码,然后又再次编译成另一个目标代码,我只能用牛B来形容. NativeScript
2015/03/14 09:10
回复
举报
2015/03/14 10:03
回复
举报
更多评论
发表于大前端专区
2020/03/31 07:17

NativeScript 6.5.0 发布,跨平台原生应用框架

NativeScript 6.5.0 发布了,主要内容如下: Bug Fixes 修复视图未从其父视图移除的问题 d.ts:更新 iOS 13.2 的 iOS 输入 bottom-nav:当其中一张图片较小时,Android TabStripItems 无法正确对齐 tabs:动画运行时延迟 loadView Features tabs:选项卡样式改进 tabs:在 TabStrip 中添加了 selectedItemColor 和 unSe...

0
5
发表于大前端专区
2019/11/11 07:46

NativeScript 6.2 发布,黑暗模式和新的 npm 包

NativeScript 6.2 已经发布,主要内容如下: Dark Mode 该版本引入黑暗模式: 更新主题,最新版本支持黑暗模式的开箱即用 拥有自己实现黑暗模式所需的扩展点 可以选择从操作系统继承暗模式设置,也可以在应用程序中实现自定义控件 大多数 “Pro” NativeScript 组件,如日历、图表和 DataFrom,已经提供了黑暗模式外观 ...

1
2
发表于大前端专区
2019/07/19 07:08

NativeScript 6.0 发布,完全支持 Vue.js

NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android 和 Windows Universal,NativeScript 可将跨平台代码翻译成目标平台的代码。6.0 版本发布是一个新的里程碑,更新内容如下: NativeScript AppSync 这个服务能够立即交付新版本的应用程序,并在需要时强制用户使用最新版本的...

5
16
发表于大前端专区
2019/05/22 09:46

NativeScript 5.4.0 发布,JS 构建原生安卓/IOS 应用

Bug修复 如果加载组件失败则抛出(#7186)(b7abb3d) android / button:可能不正确的按钮视觉状态(#7190)(2a02360) devtools-ios:确保在主线程(c60f74d)上运行UI修改,关闭#7219 ios:向TouchGestureRecognizer添加空检查(#7182)(7d3f0d9) ios: application.displayedEvent不依赖于要触发的跟踪(#7...

0
12
发表于大前端专区
2018/10/19 07:05

NativeScript 5.0.0 rc 发布,跨平台原生应用框架

NativeScript 5.0.0 rc 发布了,NativeScript 可以使用 Javascript、CSS、XML 创建真正的 Native 跨平台应用,支持 iOS Android 和 Windows Universal,NativeScript 可将跨平台代码翻译成目标平台的代码。 此次更新内容: 重构:恢复动画 api 的使用(#6403) 发布公告 下载地址: Source code(zip) Source code(tar.g...

1
2
发表于大前端专区
2018/08/09 07:20

NativeScript 4.2.0 发布,跨平台原生应用框架

NativeScript 4.2.0 发布了,NativeScript 可以使用 Javascript、CSS、XML 创建真正的 Native 跨平台应用,支持 iOS Android 和 Windows Universal,NativeScript 可将跨平台代码翻译成目标平台的代码。 此次更新内容包括: 修复(android): HEAD 请求应返回 statusCode 修复: iOS TimePicker minuteInterval 属性 (#6116...

1
1
发表于大前端专区
2018/07/22 07:28

NativeScript 4.1.1 发布,跨平台原生应用框架

NativeScript 4.1.1 发布了,NativeScript 可以使用 Javascript、CSS、XML 创建真正的 Native 跨平台应用,支持 iOS Android 和 Windows Universal,NativeScript 可将跨平台代码翻译成目标平台的代码。 此次更新内容包括: fix: 要求 devtools-elements.js 显式标注扩展名。 (#6079) chore: 修复 TS 转换错误。(#5906)...

1
5
发表于大前端专区
2018/05/20 07:50

NativeScript 4.0.1 发布,创建跨平台原生应用的框架

NativeScript 4.0.1 已发布,这是上个月发布的 4.0 的首个维护版本,修复了以下 Bug : feat(builder): enable reading xml from bundle (#5668) (1e682bf), closes #5668 fix(layout): IOS Layout not invalidated with custom root (#5724) (f1c0b85), closes #5724 NativeScript 可以使用 Javascript,CSS, XML 创建真...

0
13
发表于大前端专区
2018/04/14 07:42

NativeScript 4.0.0 发布,创建跨平台原生应用的框架

NativeScript 4.0.0 已发布,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android 和 Windows Universal,NativeScript 可将跨平台代码翻译成目标平台的代码。 Bug Fixes android-images: set decodeHeight/decodeWidth default values to dip (#5490) (6509efa) animations: c...

11
21
发表了资讯
2017/12/22 07:59

NativeScript 3.4.0 发布,创建跨平台原生应用的框架

NativeScript 3.4.0 已发布,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android 和 Windows Universal,NativeScript 可将跨平台代码翻译成目标平台的代码。 新版本带来了以下的新功能: 默认情况下使用 Chrome 开发工具进行调试 支持 Android Studio 支持 Angular 5 更新了对...

5
33
发表了资讯
2017/10/26 14:43

NativeScript 3.3.0 发布,Native 跨平台应用

NativeScript 3.3.0 已发布,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 修复 (# 4959) Android: a crash related to ConstantState drawable on API 23 (# 4950) Android: a crash when application is suspended ...

10
15
发表了资讯
2017/06/23 07:18

NativeScript 3.1.0 发布,Native 跨平台应用

NativeScript 3.1.0 已发布,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 更新内容: 修复: (# 4147) SearchBar style creates error (# 4272) SearchBar is not displayed on Android API 24 (# 4287) Margin val...

6
13
发表了资讯
2017/05/24 07:28

NativeScript 3.0.1 发布,Native 跨平台应用

NativeScript 3.0.1 已发布,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 更新内容: 修复 Image 元素中的 base64 编码图像问题 修复背景图片失败的问题 修复绑定到视图的“bindingContext”不起作用的问题 修复 Te...

1
7
发表了资讯
2017/05/04 07:56

NativeScript v3.0.0 发布,Native 跨平台应用

NativeScript v3.0.0 发布了,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 更新内容: 3.0 重构是基于三个主要支柱: 性能改善; 增强可扩展性; 跨越整个跨平台模块实施更一致的 API。 完全改版的布局测量系统。 在 ...

3
13
发表了资讯
2017/03/22 08:08

NativeScript v2.5.2 发布,Native 跨平台应用

NativeScript v2.5.2 发布了,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 其 GitHub 发布主页显示,该版本将从 NativeScript/vchimev-2.5.2 合并 pull request #3831。未发现其他更新内容,点击更新日志保持关注。 ...

5
16
发表了资讯
2017/02/16 07:53

NativeScript 3.0 计划4月发布,集成 Angular4

随着 NativeScript 2.5 的发布,这个开源的跨平台移动开发框架构建器准备在4月份发布3.0版本。 NativeScript 允许使用 JavaScript 开发针对 iOS 和 Android 的原生移动应用,3.0版本将包括:最大化 NativeScript 运行时的性能改进、刷新更改、调试提速等等。 NativeScript 不仅支持 JavaScript,还支持 TypeScript 和 Go...

4
12
发表了资讯
2016/12/09 08:24

NativeScript v2.4.2 发布,Native 跨平台应用 

NativeScript v2.4.2 发布了,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 更新内容: 修复:在文本字段崩溃上设置占位符颜色时没有提示 发布主页 下载地址 Source code (zip) Source code (tar.gz)...

8
6
发表了资讯
2016/12/03 07:50

NativeScript v2.4.1 发布,Native 跨平台应用  

NativeScript 2.4.1 发布了,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 更新内容 (#3217) 适当延长错误,以便消息和堆栈出现在错误的活动 发布主页 下载地址 Source code (zip) Source code (tar.gz)...

2
9
发表了资讯
2016/11/18 07:27

NativeScript 2.4.0 发布,Native 跨平台应用

NativeScript 2.4.0 发布了,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android,NativeScript 将跨平台代码翻译成目标平台的代码。 更新内容: New FlexboxLayout CSS属性 增强:页面导入 ListView项目模板选择器 ActionItems在iOS上缺少对VoiceOver的正确支持 功能要求:S...

4
14
发表了资讯
2016/09/17 00:00

NativeScript 2.3.0 发布,Native 跨平台应用

NativeScript 发布了 2.3.0,更新内容如下: Bug修复 (#2586) Fixed issue when bind to bindingContext and other property (#2591) Label zero height issue fixed (#2593) Content type with "+json" structured syntax suffix not parsed (#2601) Text color of the Button not applied, when text-transform has b...

5
15
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表于大前端专区
2015/06/17 10:59

NativeScript 开发原生APP

最近在学习使用Native Script,官方查看详细信息: native script ; 一般按着它的文档很容易部署好开发环境, 过称中有几个问题这里说一下。 安装 安卓 sdk 的时候, 要增加国内代理,这样速度快,关于代理,网上有很多,我用的那个速度不是很快,就不推荐了。 在MAC上用真机调试的时候,安卓默认是安不上的。此时,安装 ...

0
2
发表于大前端专区
2019/01/04 18:10

使用 NativeScript 创建原生App

安装nativescript cli npm i -g nativescript 使用nts命令创建nativescript项目 tns create ng-native --ng 在手机上安装nativescript playground 和 nativescript preview 进入项目文件夹 用电脑连接手机 在......

0
0
发表了博客
2018/06/14 09:51

NativeScript Vue 和 Weex 对比与分析

Weex   Weex是一个项目,由阿里巴巴创造。它的口号是“一次编写,到处运行”,这意味着你可以使用完全相同的代码库构建网站(HTML5),Android和iOS的应用。目前有几个Weex的生产项目,在中国可能有数以百万计的用户。对Weex的核心正在积极发展中,每周都会PRs。Weex有一些组件和插件与本地的平台交互,还有一套有点粗...

0
0
发表了博客
2015/04/04 22:03

跨平台开发NativeScript的环境搭建与项目的创建运行

环境搭建(Windows环境下) 安装nodejs,在官网下载安装包安装即可。 安装Chocolatey(非必需,以下使用choco命令来安装的软件可自行下载安装)。用管理员启动cmd贴上如下代码即可 @powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://choc...

1
2
2018/04/17 21:27

NativeScript 4.0.0 发布,创建跨平台原生应用的框架

关注本号 行业信息一触直达 NativeScript 4.0.0 已发布,NativeScript 可以使用 Javascript,CSS, XML 创建真正的 Native 跨平台应用,支持 iOS Android 和 Windows Universal,NativeScript 可将跨平台代码翻译成......

0
0
发表于大前端专区
2018/04/13 12:58

用Vue.js开发原生应用选择Weex还是NativeScript?

Vue.js是一个很好的框架!它有一个友好的学习曲线,结合了最好的React的组件方法和Angular的模板。尽管如此,Vue.js仍然有一个限制,它还不能像React的React Native,Vue.js目前还没有稳定、广泛采用的方法来开发原生应用程序。 不过,这肯定会改变!目前有两个框架正在开发,可以打开用Vue.js框架创建本地应用程序之门,...

0
2
发表了博客
2018/08/16 17:29

mac下创建nativescript angular项目

1 . set up your system step 1: install node.js step 2: install the nativescript cli 2.1 npm install -g nativescript 2.2 verify the nativescript cli tns step 3: install ios and android requirements 3.1 window 3.2 macos 3.2.1 ruby -e "$(curl -fsSL https://www.nativescript.org/setup/mac)" 3.2.2 Do y...

0
0
发表了博客
2018/04/19 14:27

nativescript(angular2)——ListView组件

NativeScript是一个不使用webview的情况下构建跨平台并且原生的iOS和Android应用。使用Angular、TypeScript或JavaScript来获得原生UI和性能体验,同时可重用web项目中的技术和代码。通过JavaScript实现100%的原生api访问通过JavaScript,并使用npm、CocoaPods、Gradle获取三方库或者插件,属于开源项目。 ListView案例图...

0
0
发表了博客
2018/04/19 13:44

nativescript(angular2)——轮播图组件

import { Directive, ElementRef, AfterViewInit, Input, OnDestroy } from "@angular/core"; import { AnimationCurve } from "tns-core-modules/ui/enums"; import { Image } from "tns-core-modules/ui/image"; import { StackLayout } from "tns-core-modules/ui/layouts/stack-layout/stack-layout"; import { Grid...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2015/03/14 09:16

NativeScript最终软件怎么加密的?

如题。 http://www.oschina.net/p/nativescript

8
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
29 评论
689 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部