PhoneGap中文网

 找回密码
 立即注册
PhoneGap中文网 PhoneGap资讯 查看内容

JavaScript开源跨平台框架NativeScript_用NativeScript创建JavaScript原生移动应用 ...

2015-3-11 20:03| 发布者: admin| 查看: 4405| 评论: 0

摘要: NativeScript是一款使用JavaScript语言来构建跨平台原生移动应用的开源框架,支持iOS、Android和 Windows Phone。且NativeScript的使用没有过多繁杂的要求,只需使用自己已经掌握的JavaScript和CSS技能就能开发出 真 ...
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.OnClickListener,UIControl.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。
  • 即时支持新的原生平台。
  • NativeScript是一个基于Apache 2.0许可的Github开源项目。





作为免费开源项目的NativeScript,它的源码已经托管至Github上,让开发者可以没有任何门槛约束的随意使用。除了无需学习新的编程语言,使用大家所熟识的JavaScript编码及CSS打造应用样式外,NativeScript的强大之处还有使用跨平台的UI抽象、共享业务逻辑和第三方原生库。

100%访问原生平台API:整个原生平台功能在JavaScript层都是可用的。


基于ECMAScript5+JavaScript和CSS标准:使用现有的技能构建原生应用。


100%共享代码:基于一次编码,构建Android、iOS和Windows Phone应用。


使用NativeScript开发的应用展示:

Amroo:
Amroo是一款专为养宠物的人员打造的应用,当你要出差或是度假时,可以通过这款应用找到可以帮你照看宠物的人。简单直观的界面设计与功能,都是通过NativeScript实现的,你也可以试试。


Tasks:
Tasks是用于规划和监督事情进程的任务管理应用,它的构建当然也是来自NativeScript技术。







头晕

难过

扯淡

不解

搞笑

支持

超赞

欠扁

相关阅读

最新评论

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2024-4-26 16:03 , Processed in 0.039348 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

返回顶部