名称
最后提交
最后更新
firmware Loading commit data...
images Loading commit data...
README.md Loading commit data...
Ubains.ui Loading commit data...
Ubains.ui.png Loading commit data...
init.json Loading commit data...
record.db Loading commit data...
system.dat Loading commit data...
system.hzdb Loading commit data...
test.ui.png Loading commit data...
test.wrd Loading commit data...

GViewer 中控程序

升级说明

  • 2021-7-29 12:23:00

    增加超出页面滑动功能,详见Demo 首页,页面高度大于屏幕高度才能滑动。

  • 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