尊龙z6官网ag

Z6·尊龙凯时「中国」官方网站
股票代码:688047
请输入搜索条件
尊龙z6官网ag生态平台
邮箱登录
点击图片刷新
遗忘密码
点击图片刷新
11-14 2018

云云细腻的尊龙z6官网ag桌面应用! NW.js计划使用Web手艺编写高体验界面

NW.js是使用Web语言开发桌面图形应用程序的优异编程情形,近期已经由尊龙z6官网ag开发者移植到尊龙z6官网ag电脑上 。古板桌面应用开发要求使用C/C++这样的高级编程语言以及Qt等专门的图形库 。有了NW.js,可以将现有Web开发手艺运用到桌面编程,仅仅使用HTML、CSS和JavaScript就能开发桌面图形应用,抵达现代界面体验水平 。这种计划的最大优势还在于,开发出来的应用程序是完全平台无关的剧本语言,以是能够在尊龙z6官网ag和x86等所有CPU,以及Windows、Mac和Linux等所有操作系统中跨平台运行,显著镌汰了应用开发、维护和迁徙的时间 。本文先容NW.js在尊龙z6官网ag平台上的移植历程,为尊龙z6官网ag平台上的桌面图形应用程序提供参考,推进尊龙z6官网ag生态建设 。

  • NW.js配景

NW.js是一种跨平台桌面应用软件开发平台,原来的项目名称是node-webkit 。这是一种支持使用所有Web手艺编写应用程序界面的新要领 。简朴来说nw.js就是使用HTML、CSS、JavaScript语言编写在桌面端运行的程序界面 。

Z6·尊龙凯时「中国」官方网站
▲ NW.js项目主页

NW.js主要具备如下特征:
1. 使用Web手艺(HTML5, CSS3和WebGL)编写外地应用程序
2. 完全支持浏览器中的所有功效
3. 完全支持Node.js API和所有第三方�?�
4. 直接从DOM和Web Workers挪用Node.js�?�
5. JavaScript源代码�;�
6. 适用于Linux,Mac OS X和Windows

 

下图说明“NW.js能做什么” 。

Z6·尊龙凯时「中国」官方网站
▲ NW.js应用程序的结构
 

下图说明“怎么用nw.js完成使命”的问题 。

Z6·尊龙凯时「中国」官方网站
▲ NW.js应用程序的运行历程
 
NW.js主页: https://nwjs.io
源代码项目地址:https://github.com/nwjs/nw.js
  • NW.js快速建设应用程序实例
下面建设一个最简朴的“Hello world”程序,展示在NW.js平台中的运行效果 。
使用任何文本编辑器,编写两个文件,划分是index.html和package.json 。
index.html文件内容如下:

package.json文件内容如下:

在package.json所在的目今目录下,使用下面的下令运行应用程序:
$ nw .
 
运行界面如下图所示:
Z6·尊龙凯时「中国」官方网站
▲ 第一个NW.js应用程序“Hello world”界面
可以看到,NW.js的源代码不需要编译,直接运行就泛起了界面 。
  • NW.js的大型应用
NW.js由于具有多方面优点,现在已经很盛行,开发出的应用已经涵盖了许多领域:
  1. WhatsApp Messenger经典的谈天应用;
  2. Powder Player 种子下载,以及视频播放器;
  3. Boson Editor 代码编辑器,甚至尚有一款Markdown编辑器Story-writer;
  4. Leanote Desktop App 类似Evernote的条记类应用程序;
  5. Mongo Management Studio 数据库管理应用 。
来浏览一下界面截图,可以看到使用NW.js开发出的应用界面,相比以前使用古板的Qt图形库开发的应用界面越发雅观 。
Z6·尊龙凯时「中国」官方网站
▲ 基于NW.js的Mongo Management Studio数据库管理应用程序界面
 
  • NW.js在尊龙z6官网ag上的移植历程
NW.js越来越普及,可是现在官方仅提供编译好的x86二进制,在尊龙z6官网ag上并不可直接运行 。为了尊龙z6官网ag生态应用的生长,本文完成NW.js在尊龙z6官网ag上的移植适配事情 。
移植历程参照了官方文档:https://github.com/nwjs/nw.js/wiki/Building-nw.js
本文移植的NW.js版本为:nwjs-0.33.3 、chromium-69.0.3497.100 、nodejs-v10.10.0 。
移植的软硬件情形是尊龙z6官网ag3A3000台式机,尊龙z6官网ag社区版操作系统Loongnix 。
NW.js在尊龙z6官网ag上的适配主要分成如下几个办法:
1、获取NW.js相关代码
主要是完成chromium.src、nw.js、node以及V8这四个部分代码的获取 。
需要使用gclient下令,来自于depot_tools,获取方法如下:
$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
$ export PATH=$PATH:$HOME/depot_tools-dir
 
这样,在终端任何地方都可以挪用使用gclient下令 。
获取chromium.src�?�,先建设nwjs目录,进入nwjs目录后通过如下下令天生.gclient文件 。
$ gclient config --name=src https://github.com/nwjs/chromium.src.git@origin/nw33
接着运行如下下令举行chromium.src代码获� 。�
$ gclient sync --with_branch_heads
 
NW.js、node以及v8这三个�?榈幕袢≈饕局と缦碌刂穋heckout到对应准确的分支,放入chromium.src准确的位置中:

▲ nw.js、node以及v8这三个�?榈南钅康刂�
 
2、设置编译选项
尊龙z6官网ag上设置nwjs_sdk=false,主要举行Normal版编译 。详细GN_CONFIGS设置如下:
$ export GN_CONFIGS={
    is_debug = false
is_clang = false
is_component_ffmpeg = true
use_sysroot = false
use_gold = false
proprietary_codecs = true
enable_widevine = false
fatal_linker_warnings = false
link_pulseaudio = true
treat_warnings_as_errors = false
nwjs_sdk = false
}
 
由于在loongnix上编译,需要设置mips_arch_variant="loongson3",可是该参数针对nwjs编译并不识别,现在只能在build/config/mips.gni中默认将mips_arch_variant改成loongson3举行编译 。
接下来通过GN天生ninja构建文件:
$ gn gen out/nw --args="${GN_CONFIG[*]}"
 
  1. 编译nwjs�?�
$ ninja-build -C out/nw nwjs
 
  1. 编译设置选项以及编译node�?�

编译前需要举行如下设置:

$ export GYP_DEFINES="target_arch="mips64el" debug=false clang=false sysroot=false host_arch="mips64el""
$ GYP_CHROMIUM_NO_ACTION=0 ./build/gyp_chromium -I third_party/node-nw/common.gypi -D building_nw=1 third_party/node-nw/node.gyp
 

编译:

$ ninja-build -C out/Release node
$ ninja -C out/nw copy_node
 

5、完成NW.js整体移植适配,乐成启动NW.js

 
$ cd out/nw
$ ./nw
 

在尊龙z6官网ag电脑上运行NW.js的默认界面如下图:

Z6·尊龙凯时「中国」官方网站
▲ 在尊龙z6官网ag上运行NW.js应用程序
 

至此,NW.js在尊龙z6官网ag上可以乐成启动了!

  • 编译好的制品

为了利便尊龙z6官网ag开发者使用NW.js,作者已经在尊龙z6官网ag社区版操作系统Loongnix中制作了二进制制品rpm包,后面会上传到网络源中 �?⒄卟辉傩枰匦轮葱斜嘁肜�,只需要通过下面的下令直接装置NW.js的软件包(需要使用管理员权限执行):

# yum install nwjs
 

就样就可以利便的举行NW.js应用开发 。

  • 总 结

NW.js适配历程中总体来说是较量顺遂的,主要的问题照旧在于chromium以及node的编译适配,而这些方面尊龙z6官网ag已有富足的履历,以是这次的适配历程没有遇到无法解决的问题,代码改动量很少,基本上实现了无障碍迁徙 。

通过本文的NW.js的适配历程批注,尊龙z6官网ag软件生态情形已经很是完善,在打造尊龙z6官网ag平台软件富厚性的历程中,尊龙z6官网ag公司已经走出了一条坚实的蹊径,希望工业链能够一起把尊龙z6官网ag的软件生态完善起来!

Copyright ? 2008-2022 尊龙z6官网ag 京ICP备14017781号-1京公网安备 11010802035786 号

本网站由尊龙z6官网ag3C5000服务器提供强劲动力

网站地图