nwjs sdk linux x64,Ubuntu环境下的nwjs安装及使用教程
需求:通过nwjs实现一个可以全屏显示,防止用户退出浏览器的演示用app
一、安装Node.js
sudo apt-get install nodejs
sudo apt-get install npm
这种方法安装的版本可能不是最新的,可以尝试直接从官网(https://nodejs.org/en/download/)下载。
解压下载的node-v6.11.4-linux-x64.tar.gz文件之后建立软链接即可:
sudo ln -s ~/node-v6.11.4-linux-x64/bin/node /usr/local/bin/node
sudo ln -s ~/node-v6.11.4-linux-x64/bin/npm /usr/local/bin/npm
sudo ldconfig
如果下载的是Source Code(node-v6.11.4.tar.gz),那么需要在解压后的目录自行编译:
./configure
make
make install
如果遇到所需环境版本问题,在sudo apt-get update && apt-get upgrade后用apt-get remove旧版本后install就好
二、安装nwjs
在官网(http://nwjs.io/)上下载nwjs-sdk-v0.25.4-linux-x64.tar.gz,解压后建立软链接:
sudo ln -s ~/nwjs-v0.18.8-linux-x64/nw /usr/local/bin/nw
sudo ldconfig
进入目录后可以看到nw文件,运行./nw命令查看是否可以正常运行。
三、nwjs使用示例
1.创建html文件
首先创建一个简单的Demo.html文件:
Demo
Visit Baidu
2.创建package.json文件
用来进行初始化配置:
{
"name": "Demo",
"main": "Demo.html",
"window": {
"title": "Demo",
"toolbar": false,
"frame": true,
"position": "center",
"always-on-top": true,
"fullscreen": true,
"width": 1920,
"heigth": 1080
}
}
这里实现了一个去掉了工具栏的全屏效果
3.打包文件运行
创建好两个文件之后将其打包:
cat package.json Demo.html > Demo.nw
这时新打包出来的nw文件就可以运行了:
sudo ./nw Demo.nw
创建桌面图标
这里想要实现一个双击启动的效果,类似.exe文件的运行效果。根据官方教程使用cat `which nw` app.nw > app && chmod +x app创建的app一直无法使用,所以想出了一个取巧的办法:
1. 创建一个bash脚本start.sh启动Demo.nw:
#!/bin/bash
cd /home/ubuntu/Desktop/nwjs-v0.18.8-linux-x64
./nw demo.nw
找一个app图标,命名为icon.jpg
在桌面创建一个Demo.desktop图标,使用sudo nano Demo.desktop命令打开后写入:
[Desktop Entry]
Encoding=UTF-8
Name=Demo
Exec=sh /home/ubuntu/Desktop/nwjs-v0.18.8-linux-x64/start.sh
Icon=/home/ubuntu/Desktop/nwjs-v0.18.8-linux-x64/icon.jpg
Info="Spark"
Categories=GTK;Network;message;
Comment="demo_nwjs"
Terminal=false
Type=Application
StartupNotify=true
Name[zh_CN]=Demo
这时双击就能看到运行结果了
屏蔽按键
package.json中配置了全屏并且去掉工具栏,就是为了防止用户退出浏览器,具体操作步骤如下:
1. 在设置中可以关闭快捷键,并自定义一个快捷键呼出teminal用来退出浏览器,例如Shift_R + Ctrl_R + Q。
2. 将键盘左侧的Shift、Ctrl、Super(win)键改到CapsLock键上,这可以通过xmodmap实现:
#super_l -> capslock
xmodmap -e "remove mod4 = Super_L"
xmodmap -e "keycore 133 = Caps_Lock NoSymbol Caps_Lock"
xmodmap -e "add lock = Caps_Lock"
#super_r -> capslock
xmodmap -e "remove mod4 = Super_R"
xmodmap -e "keycore 134 = Caps_Lock NoSymbol Caps_Lock"
xmodmap -e "add lock = Caps_Lock"
#alt_l -> capslock
xmodmap -e "remove mod1 = Alt_L"
xmodmap -e "keycore 64 = Caps_Lock NoSymbol Caps_Lock"
xmodmap -e "add lock = Caps_Lock"
#ctrl_l -> capslock
xmodmap -e "remove control = Control_L"
xmodmap -e "keycore 37 = Caps_Lock NoSymbol Caps_Lock"
xmodmap -e "add lock = Caps_Lock"
#shift_l -> capslock
xmodmap -e "remove shift = Shift_L"
xmodmap -e "keycore 50 = Caps_Lock NoSymbol Caps_Lock"
xmodmap -e "add lock = Caps_Lock"
#alt_r -> capslock
xmodmap -e "remove mod1 = Alt_R"
xmodmap -e "keycore 108 = Caps_Lock NoSymbol Caps_Lock"
xmodmap -e "add lock = Caps_Lock"
将上述代码添加到start.sh的启动命令之前,这样在双击启动的时候就可以修改掉按键了。
总结
以上所述是小编给大家介绍的Ubuntu环境下的nwjs安装及使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
nwjs sdk linux x64,Ubuntu环境下的nwjs安装及使用教程相关推荐
- Linux环境下Protobuf完整安装和使用教程
Linux环境下Protobuf完整安装和使用教程 目标 下载和安装 环境配置 一个例子 1.报文定义 2.报文生成 3.使用报文 4.编译程序 5.常见问题: 目标 本文将教会一个完全的新手如何搭建 ...
- ubuntu环境下redis的安装配置
ubuntu环境下redis的安装配置 1. 简要介绍 dis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表 ...
- 腾讯云服务器如何安装应用软件,腾讯云服务器Ubuntu环境下通过Apt-get安装软件...
腾讯云服务器Ubuntu环境下通过Apt-get安装软件?腾讯云提供了Apt-get下载源.操作系统为Ubuntu12.04的云服务器,用户可通过Apt-get快速安装软件.对于apt-get下载源, ...
- Android 开发之Windows环境下Android Studio安装和使用教程(图文详细步骤)
鉴于谷歌最新推出的Android Studio备受开发者的推崇,所以也跟着体验一下. 一.介绍Android Studio Android Studio 是一个Android开发环境,基于Intel ...
- [FirefoxOS_开发环境]Linux和Ubuntu环境下B2G(Firefox OS)安装、编译、测试教程集合
1在ubuntu上测试Firefox OS(B2G)系统 Firefox OS,项目代号为"Boot 2 Gecko",是一个开放的完全基于WEB标准的智能手机操作系统,由Mozi ...
- linux sublime nodejs,Ubuntu环境下sublime3 nodejs安装与插件配置
1.sudo add-apt-repository ppa:webupd8team/sublime-text-3 回车,出现很多信息.但是我们看看图片最后字知道,这地方在等待我们确认是否添加这个仓库, ...
- nwjs sdk linux x64,【NWjs中文网™】 - nw.js跨平台技术,使用JavaScript,HTML以及CSS搭建跨平台桌面应用...
最新版:v0.53.0,稳定版:v0.53.0,LTS版:v0.14.7 v0.53.0 v0.53.0,win-x64,normal v0.53.0,win-x64,sdk v0.53.0,win- ...
- [Linux实用工具]Ubuntu环境下SSH的安装及使用
SSH分为客户端和服务端. 服务端是一个守护进程,一般是sshd进程,在后台运行并响应来自客户端的请求.提供了对远程请求的处理,一般包括公共密钥认证.密钥交换.对称密钥加密和非安全连接. 客户端一般是 ...
- 在Ubuntu环境下使用vcpkg安装sqlite_orm包文件
Ubuntu安装vcpkg 从github下载vcpkg的安装包,在usr/local路径下面执行如下命令 git clone https://github.com/Microsoft/vcpkg.g ...
最新文章
- windows10 mysql 5.5.36 安装
- 安装Exchange Server2016管理工具
- putty 配置导出
- 基础补充和加强——希望对后来的人有所帮助
- 获取GridView中RowCommand的当前选中行的索引或主键Id
- 华为双系统是鸿蒙系统吗,华为p50pro是鸿蒙系统吗-华为p50pro有双系统吗
- 图片里的标志化的构造和执行
- 零基础想学Python,明白这2点,越快年薪30W!
- 计算机黑屏但是有鼠标,电脑桌面黑屏怎么解决 电脑黑屏怎么办 - 云骑士一键重装系统...
- linux日期时间转换函数,Linux时间戳、日期转换函数
- clone远程代码 在不同电脑上git_Git 同一电脑配置多个远程仓库
- win10多用户同时远程桌面登陆
- 玩转OpenStack网络Neutron(1)--热身
- 100个C语言的编程题
- 可解释性机器学习( Explainable Artificial Intelligence (XAI) )文献阅读记录(1.1)
- 自动阅读脚本root的好还是免root的好?
- python3爬取淘女郎图片
- gh-ost大表DDL工具源码阅读
- 白帽汇龙专:Web扫描器的架构变迁之路
- Python打包成exe,文件太大问题解决办法
热门文章
- C#中类和对象的详解
- 缩短url_我如何免费制作自己的URL缩短器
- 葛洲坝电力集团责任有限公司改变企业新句号
- (亚马逊第一步)撸一个亚马逊服务器从注册到登录所需几步
- 采用dlopen、dlsym、dlclose加载动态链接库【总结】
- Uncaught ReferenceError: $ is not defined几种处理方式
- ArcGIS空间分析基本操作
- 为什么我要自己做一个周易软件
- libgomp.so.1:version 'GOMP_4.0' not fount 问题的解决方案
- opencv 二值化 matlab,opencv-python图像二值化函数cv2.threshold函数详解及参数cv2.THRESH...