帖子
帖子
用户
博客
课程
显示全部楼层
34
帖子
5
勋章
2995
Y币

hikvision 模块测试 demo

[复制链接]
发表于 2020-11-10 15:14:37
有业务,对接萤石云的监控设备,所以在模块库里测试了一下这个模块备用qrcode(),和 pause()方法没有写。
在config.xml配置好这些
  1. <feature name="hikvision">
  2.                 <param name="appKey" value="26810f3acd794862b608b6cfbc32a6b8" />
  3.                 </feature>
复制代码

整体页面代码如下,

  1. <!DOCTYPE html>
  2. <html>
  3.         <head>
  4.                 <meta charset="utf-8">
  5.                 <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,initial-scale=1.0,width=device-width" />
  6.                 <meta name="format-detection" content="telephone=no,email=no,date=no,address=no">
  7.                 <title>测试萤石视频监控</title>
  8.                 <link rel="stylesheet" href="https://cdn**.**/npm/vant@2.10/lib/index.css" />
  9.                 <style type="text/css">
  10.                         html,
  11.                         body {
  12.                                 height: 100%;
  13.                                 background-color: #f5f5f5;
  14.                                 -webkit-overflow-scrolling: touch;
  15.                         }

  16.                         #wrap {
  17.                                 height: 100%;
  18.                         }

  19.                         #main {
  20.                                 overflow: auto;
  21.                         }

  22.                         .flex-wrap {
  23.                                 display: -webkit-box;
  24.                                 display: -webkit-flex;
  25.                                 display: flex;
  26.                         }

  27.                         .flex-con {
  28.                                 -webkit-box-flex: 1;
  29.                                 -webkit-flex: 1;
  30.                                 flex: 1;
  31.                         }

  32.                         .flex-vertical {
  33.                                 -webkit-box-orient: vertical;
  34.                                 -webkit-flex-flow: column;
  35.                                 flex-flow: column;
  36.                         }

  37.                         .van-nav-bar {
  38.                                 background-color: #13227a;
  39.                         }

  40.                         .van-nav-bar__text:active {
  41.                                 background-color: #13227a;
  42.                                 color: #C1C3C5;
  43.                         }

  44.                         .van-nav-bar__title,
  45.                         .van-nav-bar .van-icon,
  46.                         .van-nav-bar__text {
  47.                                 color: #FFFFFF;
  48.                         }

  49.                         .van-nav-bar__left,
  50.                         .van-nav-bar__right {
  51.                                 align-items: flex-end;
  52.                                 bottom: 1rem;
  53.                         }

  54.                         .center {
  55.                                 text-align: center;
  56.                         }

  57.                         [v-cloak] {
  58.                                 display: none;
  59.                         }

  60.                         .van-button {
  61.                                 margin: 5px 0;
  62.                         }
  63.                 </style>
  64.         </head>
  65.         <body>
  66.                 <div id="wrap" class="flex-wrap flex-vertical" v-cloak>
  67.                         <van-nav-bar id="header" title="测试萤石视频监控" :border="false"></van-nav-bar>
  68.                         <div id="main" class="flex-con"></div>
  69.                         <van-row :gutter="20" style="width: calc(100% - 20px);margin: 0 auto;">
  70.                                 <van-col span="12">
  71.                                         <van-button block type="primary" @click="open">open</van-button>
  72.                                 </van-col>
  73.                                 <van-col span="12">
  74.                                         <van-button block type="danger" @click="close">close</van-button>
  75.                                 </van-col>
  76.                                 <van-col span="12">
  77.                                         <van-button block type="primary" @click="start">start</van-button>
  78.                                 </van-col>
  79.                                 <van-col span="12">
  80.                                         <van-button block type="danger" @click="stop">stop</van-button>
  81.                                 </van-col>
  82.                                 <van-col span="12">
  83.                                         <van-button block type="primary" @click="show">show</van-button>
  84.                                 </van-col>
  85.                                 <van-col span="12">
  86.                                         <van-button block type="danger" @click="hide">hide</van-button>
  87.                                 </van-col>
  88.                         </van-row>
  89.                 </div>
  90.         </body>
  91.         <script type="text/javascript" src="./script/api.js"></script>
  92.         <script src="https://cdn**.**/npm/vue@2.6/dist/vue.min.js"></script>
  93.         <script src="https://cdn**.**/npm/vant@2.10/lib/vant.min.js"></script>
  94.         <script type="text/javascript">
  95.                 new Vue({
  96.                         el: '#wrap',
  97.                         mounted() {
  98.                                 apiready = function() {
  99.                                         $api.fixStatusBar($api.byId('header')) // 沉浸式
  100.                                         hikvision = api.require('hikvision');
  101.                                 }
  102.                         },
  103.                         methods: {
  104.                                 toast(msg) {
  105.                                         api.toast({
  106.                                                 msg: msg,
  107.                                                 duration: 2000,
  108.                                                 location: 'bottom'
  109.                                         });
  110.                                 },
  111.                                 open() {
  112.                                         var offset = $api.offset($api.byId('main'));
  113.                                         var params = {
  114.                                                 accessToken: 'ra.65xkz22b0bp6xex24l61s2np3hnp1cv4-8oi40mvxxd-1qae9is-vlahjlovm',
  115.                                                 url: 'ezopen://open**.**/203751922/1.hd.live',
  116.                                                 rect: {
  117.                                                         x: offset.l, //(可选项)数字类型;播放画面 x 坐标(相对于所属的 Window 或 Frame);默认值:0
  118.                                                         y: offset.t, //(可选项)数字类型;播放画面 y 坐标(相对于所属的 Window 或 Frame);默认值:0
  119.                                                         w: offset.w, //(可选项)数字类型;播放画面宽(相对于所属的 Window 或 Frame);默认值:屏幕宽度
  120.                                                         h: offset.h, //(可选项)数字类型;播放画面高(相对于所属的 Window 或 Frame);默认值:300
  121.                                                 },
  122.                                                 isProgress: true
  123.                                         };
  124.                                         var _this = this
  125.                                         hikvision.open(params, function(ret, err) {
  126.                                                 if (ret.status) {
  127.                                                         _this.toast('打开成功')
  128.                                                 } else {
  129.                                                         _this.toast(JSON.stringify(err));
  130.                                                 }
  131.                                         });
  132.                                 },
  133.                                 start() {
  134.                                         hikvision.start();
  135.                                         this.toast('开始播放');
  136.                                 },
  137.                                 close() {
  138.                                         hikvision.close();
  139.                                         this.toast('关闭播放器');
  140.                                 },
  141.                                 show() {
  142.                                         hikvision.show();
  143.                                         this.toast('显示');
  144.                                 },
  145.                                 hide() {
  146.                                         hikvision.hide();
  147.                                         this.toast('隐藏');
  148.                                 },
  149.                                 stop() {
  150.                                         hikvision.stop();
  151.                                         this.toast('停止播放');
  152.                                 }
  153.                         }
  154.                 })
  155.         </script>
  156. </html>
复制代码




本帖子中包含更多资源,您需要 登录 才可以下载或查看,没有帐号?立即注册

X
380
帖子
4
勋章
6
Y币
有新模块ezopen
您需要登录后才可以回帖 登录

本版积分规则