最近使用到了一种nwjs技术进行开发,实际上nwjs是基于nodejs的,它支持nodejs所有的api,主要用于跨平台轻量级桌面应用开发,运行环境包括32位和64位的Window、Linux和Mac OS。在博主看来,nwjs技术实际上就是结合web前端技术编写本地应用的一种技术。截止现在,nwjs最新的稳定版本是v0.12.3,基本上只要熟悉HTML5、JS 和CSS3的开发者们都可以轻松上手,唯一的难点是现在nwjs技术文档大多都是英文文档,看起来实在费劲,即使有部分中文文档,也是简单介绍,东平西凑。所以博主咬咬牙,决定根据官方文档及个人的实际应用和经验,出一些中文系列文章,让更多开发者们认识nwjs技术并能实际运用。都说现在是html5的时代,谁说不是呢?
(一)技术介绍
nwjs是在英特尔开源技术中心创建的,它是基于谷歌浏览器核心引擎和nodejs运行,你可以通过nwjs技术使用html和js语言编写本地应用程序,它也可以让你直接从DOM调用nodejs模块,使用一种新的方式与所有的Web技术编写本地应用。它主要有以下6个特点:
(1)以网络最流行的技术编写原生应用程序的新方法
(2)基于HTML5, CSS3, JS and WebGL而编写
(3)完全支持nodejs所有api及第三方模块
(4)可以使用DOM直接调用nodejs模块
(5)容易打包和分发
(6)支持运行环境包括32位和64位的Window、Linux和Mac OS
(二)下载
官网:http://nwjs.io/
博主下载的是32位Window运行环境应用(后续文章也以该环境为主运行),解压后得到如下目录文件
locales文件夹是区域语言设置
d3dcompiler_47.dll是软件和游戏运行的重要动态链接库
ffmpegsumo.dll是谷歌浏览器核心引擎升级后用来支持视频和音频播放的动态链接库
icudtl.dat是一个存储基本数据信息的文件
libEGL.dll是实现webGL必须用到的动态链接库
libGLESv2.dll是实现GPU必须用到的动态链接库
nw.exe主要应用
nw.pak顾名思义,核心数据的压缩包
nwjc.exe用于打包时项目加密使用
pdf.dll打开pdf格式文件的动态链接库
(三)简单应用
第一步:创建index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<h1>祝大家新年快乐</h1>
</body>
</html>
第二步:创建一个package.json
{
"name": "nw-demo",
"version": "0.0.1",
"main": "index.html"
}
第三步:将文件index.html和package.json添加到压缩文件nwjs.zip
第四步:将nwjs.zip拖动至nw.exe运行
PS:在开发阶段,可不必打包,直接将包括index.html和package.json的文件夹拖动至nw.exe亦可运行。
本节简单介绍了nwjs的概念和简单应用,当然nwjs绝非仅仅如此简单,后续还包括如何适配显示窗口、如何打包成桌面应用、如何调用API、如何构建nwjs等等一系列功能,好了,今天就先到此吧,现在博主还在重感冒中,先要休息了。