DC(DCloud),APP的常用信息(设备、应用、系统等)是由不同的对象进行管理的,一般情况下可以直接获取到,比如应用所运行的系统名称可以直接用 plus.os.name 获取到,但是,要想获取应用的名称,就得先使用 plus.runtime.getProperty,然后再取其回调函数的参数才能获取,看到没,需要两步,但是在我这里,这种操作是不存在的,所以我就将常用的信息封装到了 API 对象里面。

appId

应用的 ID。

// js code
var appId = api.appId;

appName

应用的桌面名称。

// js code
var appName = api.appName;     // 比如:hhframe

appVersion

应用的版本号。

// js code
var version = api.appVersion;    // 比如:1.0

systemType

运行设备的系统类型(安卓:Android、苹果:iOS)。

// js code
var type = api.systemType;    // 比如:iOS

systemVersion

运行设备的系统版本号。

// js code
var version = api.systemVersion;   // 比如:11.0.3

deviceId

设备的唯一标识(UUID)。

// js code
var id = api.deviceId;    // 比如:63D83877-C3EA-4442-B5D3-1377D1150836

deviceName

设备的名称(生产厂商)。

// js code
var name = api.deviceName;    // 比如:smartisan

deviceModel

设备的型号。

// js code
var model = api.deviceModel;    // 比如:SM801

getNetType()

获取当前的网络连接类型。

返回值:

类型:字符串

取值:wifi、2G、3G、4G、unknown(未知)、none(未连接)、ethernet(以太网)。

// js code
var net = api.getNetType();    // 比如:wifi

execScript()

在指定 webview 中执行脚本。

参数:

execScript({params});

name:

  1. 类型:

    字符串

  2. 默认:

  3. 描述:

    必填,要执行脚本的窗口 ID。

script:

  1. 类型:

    字符串

  2. 默认:

  3. 描述:

    必填,要执行的脚本内容,可以是简单的 JS 语句,也可以是目标页面中已定义的函数名。

示例代码:

// A 页面(id:aaa)
var num = 666;

// B 页面(id:bbb)
api.execScript({
	name: "aaa",
	script: "num=0;alert(num);"     // 弹窗将弹出 0
});
// A 页面(id:aaa)
function welcome(visitor)
{
	alert("Hey,"+visitor+",Welcome to houheaven!");
}

// B 页面(id:bbb)
api.execScript({
	name: "aaa",
	script: "welcome('Eric');"     // Hey,Eric,Welcome to houheaven!
});

sendEvent()

说明:向 APP 全部窗口发送广播事件。

开发:2018-02-06

作者:立树(Eric)

灵感:Broadcast() by @newsning


参数:

用法:sendEvent( json );

name:

  1. 类型:

    字符串

  2. 默认:

  3. 描述:

    必填,要广播的事件名称。

extra:

  1. 类型:

    混合类型(数组、对象、数字、字符串、布尔 等)

  2. 默认:

    {}

  3. 描述:

    选填,广播事件携带的数据。

示例代码:

// 发送问候
api.sendEvent({
	name: "greet",
	extra: {
		msg: "嗨,小婊砸~",
		date: "2018-02-06"
	}
});

addEventListener()

说明:监听广播事件。

开发:2018-02-06

作者:立树(Eric)

灵感:Broadcast() by @newsning


参数:

用法:addEventListener( name, callback );

name:

  1. 类型:

    字符串

  2. 默认:

  3. 描述:

    必填,要监听的广播事件名称。

callback:

  1. 类型:

    回调函数

  2. 默认:

  3. 描述:

    必填,监听广播事件成功的回调函数。

示例代码:

// 接收问候
api.addEventListener("greet",function(ret){
	Console(ret.msg);       // 嗨,小婊砸~
	Console(ret.date);      // 2018-02-06
});