dMultiScreen

searchList show invokeJs

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个,示例中包含示例代码、知识点讲解、注意事项等,供您参考。

概述

dMultiScreen 可以在多个显示屏下让其显示不同的内容,可在指定屏幕下让其运行指定的html,并支持在运行时通过方法来执行指定js,运行时如在同域名下,多个屏幕的db、cookie等将共享。
dMultiScreen 适用于需要多屏展示的场景下。

模块使用攻略

**Android版本要求:>= Android4.4

dMultiScreen 所创建的视图并不支持官方所提供的方法,如:api等接口。 ## 实例widget下载地址 ##模块接口**

*requestPermission\* 请求运行dMultiScreen所需的权限。注意:当没有权限时,只有requestPermission与searchList可用!

requestPermission(callback(ret, err))

ret:

  • 类型:JSON对象
  • 内部字段:

err:

  • 类型:JSON对象
  • 内部字段:
  1. msg: 'Permission android.permission.SYSTEM_ALERT_WINDOW is denied.' //字符串型;提示出错的信息
  2. }

示例代码

  1. api.require('dMultiScreen').requestPermission(function(ret, err) {
  2. console.log(ret, err);
  3. if(ret && 'ok' == ret.result) {
  4. alert('获取权限成功');
  5. }
  6. else {
  7. alert(JSON.stringify(err));
  8. }

可用性

Android系统

可提供的1.0.0及更高版本

searchList

搜索当前设备的所有显示器。

searchList(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON数组
  • 内部字段:
  1. [
  2. {
  3. id: //显示器序号
  4. name: //显示器名称
  5. width //横向分辨率
  6. height //纵向分辨率
  7. }
  8. ]

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: '' //字符串型;提示出错的信息
  3. }

示例代码

  1. if(err)
  2. alert(JSON.stringify(err));
  3. else
  4. alert(JSON.stringify(ret));
  5. });

可用性

可提供的1.0.0及更高版本

open

在指定显示器上运行网页。

open({params},callback(ret, err))

params

id:

  • 类型:整形数字
  • 描述:(可选) 默认为主屏幕,从searchList中得到的id赋值。

url:

  • 类型:字符串型
  • 描述:(必须) 加载指定页面,支持widget:// , https:// ,http:// 协议

ret:

  • 类型:JSON对象
  • 内部字段:

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: '' //字符串型;提示出错的信息
  3. }

示例代码

  1. api.require('dMultiScreen').open({id:0, url:"https://www.baidu.com"}, function(ret, err) {
  2. if(err)
  3. alert(JSON.stringify(err));
  4. else
  5. alert(JSON.stringify(ret));
  6. });

可用性

Android系统

可提供的1.0.0及更高版本

show

在指定的显示器上显示内容。

show({params},callback(ret, err))

params

id:

  • 类型:整形数字
  • 描述:(可选) 默认为主屏幕,从searchList中得到的id赋值。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. result: 'ok' //字符串型;ok表示已显示
  3. }

err:

  • 内部字段:
  1. {
  2. msg: '' //字符串型;提示出错的信息
  3. }

示例代码

  1. api.require('dMultiScreen').show({id:0}, function(ret, err) {
  2. if(err)
  3. else
  4. alert(JSON.stringify(ret));
  5. });

可用性

Android系统

hide

在指定的显示器上隐藏内容。

hide({params},callback(ret, err))

id:

  • 类型:整形数字
  • 描述:(可选) 默认为主屏幕,从searchList中得到的id赋值。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: '' //字符串型;提示出错的信息
  3. }

示例代码

  1. api.require('dMultiScreen').hide({id:0}, function(ret, err) {
  2. if(err)
  3. alert(JSON.stringify(err));
  4. else
  5. alert(JSON.stringify(ret));
  6. });

可用性

Android系统

可提供的1.0.0及更高版本

invokeJs

在指定显示器上运行js函数。

invokeJs({params},callback(ret, err))

params

id:

  • 类型:整形数字
  • 描述:(可选) 默认为主屏幕,从searchList中得到的id赋值。

eval:

  • 类型:字符串型
  • 描述:(必须) 在指定显示器上所要运行的js字符串,运行结果只能返回字符串类型。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. result: '' //字符串型;当有返回值时,result不为空
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: '' //字符串型;提示出错的信息
  3. }

示例代码

  1. api.require('dMultiScreen').invokeJs({id:0,eval:"function a(){console.log('success!');return 'success!';} a();"}, function(ret, err) {
  2. if(err)
  3. alert(JSON.stringify(err));
  4. else
  5. });

Android系统

可提供的1.0.0及更高版本