navigator-浏览器运行环境
navigator用于管理浏览器运行环境信息
方法:
- checkPermission: 检查运行环境的权限
- closeSplashscreen: 关闭应用启动界面
- hasSplashscreen: 查询应用启动界面是否已关闭
- updateSplashscreen: 更新程序启动界面
- createShortcut: 创建应用快捷方式
- hasShortcut: 查询是否存在应用快捷方式
- isBackground: 判断当前应用是否切换到后台
- isFullscreen: 判断应用当前是否全屏模式显示
- isLogs: 判断应用当前是否输出日志
- setFullscreen: 设置应用是否全屏显示
- setLogs: 设置应用是否输出日志
- setStatusBarBackground: 设置系统状态栏背景颜色
- getStatusBarBackground: 获取系统状态栏背景颜色
- setStatusBarStyle: 设置系统状态栏样式
- getStatusBarStyle: 获取系统状态栏样式
- getStatusbarHeight: 获取系统状态栏高度
- isImmersedStatusbar: 判断当前是否为沉浸式状态栏模式
- setUserAgent: 设置userAgent值
- getUserAgent: 获取userAgent值
- setCookie: 设置Cookie值
- getCookie: 获取Cookie值
- removeAllCookie: 删除应用所有Cookie值
- removeCookie: 删除应用Cookie
- removeSessionCookie: 删除应用所有会话期Cookie值
对象:
- ShortcutOptions: 创建应用快捷方式要设置的参数
- SplashscreenOptions: 更新应用启动界面要设置的参数
- PermissionNames: 运行环境权限类型
回调方法:
- ShortcutSuccessCallback: 创建桌面快捷方式成功的回调函数
- NavigatorErrorCallback: 操作错误回调函数接口
权限:
5+功能模块(permissions)
{
// ...
"permissions":{
// ...
"Navigator": {
"description": "浏览器信息"
}
}
}
ShortcutOptions
创建应用快捷方式要设置的参数
属性:
-
name
: _(String 类型 )_快捷方式名称如果未设置则使用应用的名称,manifest.json中name属性值。
-
icon
: _(String 类型 )_快捷方式的图标如果未设置则优先使用应用中指定的图标(manifest.json中icon节点下对应分辨率的图标),如未区配则使用应用的图标(仅在独立打包时),否则使用runtime提供的默认图标。
-
toast
: _(String 类型 )_创建快捷方式后的提示信息快捷方式创建成功后显示,默认提示内容为“"XXXX"已创建桌面快捷方式”,其中"XXXX"为程序的名称,如果不需要提示则设置此值为空字符串。
-
extra
: _(JSON 类型 )_快捷方式的扩展参数其中key和value值都必须是字符串类型。
-
classname
: _(String 类型 )_要启动Activity类名通常情况下不需要指定此值,仅在5+SDK集成时自定义Activity才用到。
-
force
: _(Boolean 类型 )_是否需要强制创建快捷方式true表示强制创建,false表示不强制创建,默认值为true。 强制创建可能会导致在无法判断快捷方式是否存在的设备上重复创建,如果需要尽可能避免出现重复创建桌面快捷方式则应该设置force属性值为false。
SplashscreenOptions
更新应用启动界面要设置的参数
属性:
-
image
: _(String 类型 )_启动界面的图片路径仅支持本地文件路径,图片必须为png格式。
-
autoclose
: _(Boolean 类型 )_是否自动关闭启动界面true表示应用启动后自动关闭启动界面,false表示应用启动后不自动关闭启动界面,需要在应用调用plus.navigator.closeSplashscreen()方法关闭。
-
autoclose_w2a
: _(Boolean 类型 )_是否自动关闭启动界面(WAP2APP应用)与autoclose属性值作用一致,仅在WAP2APP应用中有效。 不推荐设置此值,如果未设置会自动使用autoclose属性值。
-
delay
: _(Number 类型 )_启动界面延时关闭时间仅在设置为自动关闭启动界面时有效。
-
delay_w2a
: _(Number 类型 )_启动界面延时关闭时间(WAP2APP应用)与delay属性值作用一致,仅在WAP2APP应用中有效。 不推荐设置此值,如果未设置会自动使用delay属性值。
PermissionNames
运行环境权限类型
常量:
-
CAMERA
: _(String 类型 )_访问摄像头权限用于调用摄像头(plus.camera./plus.barcode.)。
-
CONTACTS
: _(String 类型 )_访问系统联系人权限用于访问(读、写)系统通讯录(plus.gallery.*)。
-
GALLERY
: _(String 类型 )_访问系统相册权限用于访问(读、写)系统相册(plus.gallery.*)。
-
LOCATION
: _(String 类型 )_定位权限用于获取当前用户位置信息(plus.geolocation.*)。
-
NOTIFITION
: _(String 类型 )_消息通知权限用于接收系统消息通知(plus.push.*)。
-
RECORD
: _(String 类型 )_录音权限用于进行本地录音操作(plus.audio.AudioRecorder)。
-
SHORTCUT
: _(String 类型 )_创建桌面快捷方式权限用于在系统桌面创建快捷方式图标(plus.navigator.createShortcut)。
ShortcutSuccessCallback
创建桌面快捷方式成功的回调函数
void onSuccess( Event event ){
var result=event.result; // 快捷方式是否已经存在,调用plus.navigator.hasShortcut方法时有效
var sure=event.sure; // 是否确定创建桌面快捷方式成功,调用plus.navigator.createShortcut方法时有效
}
参数:
event
: ( Event ) 必选 创建桌面快捷方式返回的数据
此对象包含以下属性值:
event.result
- 查询快捷方式是否存在的结果(plus.navigator.hasShortcut),
可取值:existing
,快捷方式已存在;none
,快捷方式不存在(支持创建);
unsupported
,不支持创建桌面快捷方式;unknown
:不确定快捷方式是否存在
event.sure
- 创建快捷方式的结果(plus.navigator.createShortcut),Boolean类型,可取值:
true
,表示在当前环境下确定快捷方式创建成功;false
,表示不确定快捷方式是否已创建。
返回值:
void : 无
NavigatorErrorCallback
操作错误回调函数接口
function void onError( Exception error ) {
// Error.
var code = error.code; // 错误编码
var message = error.message; // 错误描述信息
}
参数:
error
: ( Exception ) 必选 操作失败信息
可通过error.code(Number类型)获取错误编码; 可通过error.message(String类型)获取错误描述信息。
返回值:
void : 无
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta name="HandheldFriendly" content="true" />
<meta name="MobileOptimized" content="320" />
<title>Hello H5+</title>
<script type="text/javascript">
function fullscreen() {
console.log("应用全屏显示!");
plus.navigator.setFullscreen(true);
}
function unfullscreen() {
console.log("应用非全屏显示!");
plus.navigator.setFullscreen(false);
}
function isfullscreen() {
console.log("是否全屏:" + (plus.navigator.isFullscreen() ? "是" : "否"));
}
function customerNavigator() {
var wn = clicked('navigator_status.html');
var bcolor = plus.navigator.getStatusBarBackground();
var bstyle = plus.navigator.getStatusBarStyle();
wn.addEventListener('close', function () {
//页面关闭后状态栏重置回以前的颜色
plus.navigator.setStatusBarBackground(bcolor);
//页面关闭后状态栏重置回以前的样式
plus.navigator.setStatusBarStyle(bstyle);
}, false);
}
function plusReady() {
// 设置状态栏背景颜色
ws = plus.webview.currentWebview();
ws.addEventListener('show', function () {
plus.navigator.setStatusBarBackground("#FF0000");
}, false);
}
if (window.plus) {
plusReady();
} else {
document.addEventListener("plusready", plusReady, false);
}
// 设置系统状态栏为深色前景色(黑色文字)
function darkStyle() {
plus.navigator.setStatusBarStyle('dark');
}
// 设置系统状态栏为浅色前景色(白色文字)
function lightStyle() {
plus.navigator.setStatusBarStyle('light');
}
</script>
</head>
<body>
<header id="header">
<div class="nvbt iback" onclick="back()"></div>
<div class="nvtt">Navigator</div>
<div class="nvbt idoc" onclick="openDoc('Navigator Document','/doc/navigator.html')"></div>
</header>
<div id="dcontent" class="dcontent">
<ul class="dlist">
<li class="ditem" onclick="fullscreen()">全屏显示</li>
<li class="ditem" onclick="unfullscreen()">非全屏显示</li>
<li class="ditem" onclick="isfullscreen()">是否全屏</li>
</ul>
<br />
<div class="button" onclick="customerNavigator()">状态栏样式</div>
<p class="des">
Android平台需要5.0及以上版本支持设置系统状态栏背景颜色。
</p>
<div class="button" onclick="darkStyle()">系统状态栏黑色样式</div>
<div class="button" onclick="lightStyle()">系统状态栏白色样式</div>
</div>
<div id="output">
Navigator用于管理浏览器运行环境信息,可用于设置应用全屏显示等。
</div>
</body>
</html>