GViewer 中控程序

升级说明

  • 2020-10-23 16:21:28

    升级 firmware 最新固件,运行程序 ,既可以获取和中控通讯的数据。

  • 2019-11-18 11:03:56

Image text

App 下载:

标准版: http://app.ubainsyun.com/GViewer

开发版本: http://app.ubainsyun.com/ubainsDevelop

说明

  • 标准版版本相对稳定,经过大量验证测试使用,可以放心使用,但Android 特性没有开发板的完善,后续测试稳定会同步开发板所有相关特性。

  • 开发版本随时更新许多新特性,但是未经过大量测试验证,存在一定风险,如不追求新特性,控件,建议使用标准版本。

方法说明:

方法名称 说明 代码
FontSize 修改按钮字体大小或者文本框文字大小 BroadcastChangeProperty(FindGUIObject('aaa'),'FontSize', "20");
FontColor 修改按钮字体颜色或者文本框文字颜色 BroadcastChangeProperty(FindGUIObject('aaa'),'FonTColor', "[225,0,0]");
Text 修改按钮文字或者文本框文字
Pos 移动View 的位置
Size 设置View 的宽、高
ImagePic 修改Image,Button 的图片
ButtonDownImage 修改Image,Button 按下的图片
BarNodePosition 修改进度条的值
AppJump 更具包名跳转到指定的app界面 BroadcastChangeProperty(FindGUIObject('ddd'),'APPJump', "com.android.browser");
IoLight UT-13、 UT-10 灯光控制
开绿灯 0x41
关绿灯 0x40
开红灯 0x31
关绿灯 0x30
开门 0x51
关门 0x50
BroadcastChangeProperty(FindGUIObject('ddd'),'IOLight',0x41);
AsGif 加载GIF 动画 BroadcastChangeProperty(FindGUIObject('imageOne'),'ASGif','json');
HideView 隐藏View BroadcastChangeProperty(FindGUIObject('eee'),'hideview','');
ShowView 显示View BroadcastChangeProperty(FindGUIObject('eee'),'ShowView','');
showList 显示list二维数组列表
ActivityJump App内页面跳转 BroadcastChangeProperty(FindGUIObject('video'),'ActivityJump', 'VideoActivity');
GetInput 获取输入框数据 BroadcastChangeProperty(FindGUIObject('inputbox1'),'getInput', '');
setInput 设置输入框的值 BroadcastChangeProperty(FindGUIObject('inputbox1'),'setInput', '测试文字');
setInputHint 设置提示文字 BroadcastChangeProperty(FindGUIObject('inputbox1'),'setInputHint', '测试文字');
hideInput 隐藏键盘 BroadcastChangeProperty(FindGUIObject('inputbox1'),'hideInput', '');
showInput 显示键盘 BroadcastChangeProperty(FindGUIObject('inputbox1'),'showInput', '');
setInputFocus 设置输入框焦点

1.根据中控编写程序 在 Button_Push (按下)、Button_Release(松手)、Button_Hold(长按) 以及Hold_Time 多少毫秒触发事件

按下

/** 
 *按钮按下方法,需要传入按下按钮的 UUID
 * @param btnId UUID
 */
public void sendBtnActionDown(String btnId) {
    count = count + 1;
    String body = "{\"btnid\": \"" + btnId + "\", \"btndown\": 0, \"command\": \"CallButton\", \"seq\": " + count + ", \"uniq_id\": \"2ce1ca9ee7d711e8bfde001a7dda7111\"}";
}

松手

/**
 * 按钮松手
 * @param btnId UUID
 */
public void sendBtnActionUp(String btnId) {
    count = count + 1;
    String body = "{\"btnid\": \"" + btnId + "\", \"btndown\": 2, \"command\": \"CallButton\", \"seq\": " + count + ", \"uniq_id\": \"2ce1ca9ee7d711e8bfde001a7dda7111\"}";
}

按钮移动

/**
 * 按钮移动 
 * @param objID UUID
 */
public void sendBtnActionMove(String objID, float x, float y) {
    count = count + 1;
    String body = "{\"seq\":" + count + ",\"command\":\"ControllerChangeProperty\",\"value\":[" + x + "," + y + "],\"property_name\":\"Pos\",\"obj_id\":\"" + objID + "\"}";
}

方法说明:

{
    "seq": 33472,
    "command": "ChangeProperty",
    "objid": "501fd972fbbf11e8a974d4258b878bb9",
    "value": 22,         //数据
    "name": "FontSize"   //指令
}

ASGIF

{
    "action": "start",                       // start 开始播放  stop 暂停播放
    "path": "images\\321.gif",               // 播放gif 路径
    "repeat": 0,                             // 重复次数(正整数)   0  无限循环重复  , 1-65535 重复次数
    "color": "#000000",                      //设置gif 背景颜色 
    "speed": 1.1                             //设置播放速度    0原始速度, 0.1-n 倍速 
}

页面控制

在项目包中 有 init.json 文件,里面有对中控程序进行页面跳转的控制。

[
    {
        "desc": "黑名单1",
        "devices": "八寸门口屏",
        "host": "192.168.1.2",
        "serialNum": "4196952e629d24c9",
        "blackList": [
            "分布式",
            "CCCC"
        ]
    },
    {
        "desc": "黑名单2",
        "devices": "八寸门口屏",
        "host": "192.168.1.2",
        "serialNum": "4196952e629d2415",
        "blackList": [
            "文本框",
            "分布式",
            "CCCC"
        ]
    },
    {
        "desc": "黑名单3",
        "devices": "八寸门口屏",
        "host": "192.168.1.2",
        "serialNum": "4196952e629d2487",
        "blackList": [
            "AAA",
            "BBB",
            "CCCC"
        ]
    }
]

json 说明

字段 说明 描述
desc String 用于描述 可以不填写
devices String 设备名称,
host String 终端IP,可以
serialNum String 设备序列号,用于区别多个设备
blackList List 跳页黑名单,在此名单中的,将不执行跳页。

版本计划 :

  • 字体适配
  • 层级错乱
  • 标准版 隐藏按钮接口
  • 长时间后台运行后,通讯服务断开//增加后台运行
  • pad 在线/离线 触发特定function 更新同步平板按钮状态 中控增加新的接口
  • 需要viewlist功能 自定义大小 自定义行数 自定义数据 返回当前数据 单级别
  • bar型控件 left to right 定位
  • GIF单次/永久播放
  • 一个加载rtsp
  • 一个加载mjpeg / http//..... 4通道
  • text型的控件 可以设置成穿透
  • 上传UI到gviewer 手动复制到images文件夹后的图片加载button会出错,重新打开gedit软件后上传变正常;
  • 手势触发function 中控增加新的接口
  • 搜索框,发送
  • 修改Toast 圆角
  • GIF播放问题。 启动播放,手动播放,暂停,循环次数。
  • 动态改变App图标
  • 动态改变App名称

问题反馈:

问题1:音量拉条问题

问题: 上传音量拉条点击,文字有改变,拉条无变化

image-20210424165242762

解决方案:

将 当前项目下 firmware 中 system.dat 文件 替换安装目录下的system.dat文件, 替换完成后,先点击GEdit 编译器上的保存 ,然后重新上传中控文件到中控。

主要替换两个路径下的文件, 如下图。

image-20210424165412985