CN107566875A - 一种在智能机顶盒上ui灵活配置、动态更新的方法 - Google Patents
一种在智能机顶盒上ui灵活配置、动态更新的方法 Download PDFInfo
- Publication number
- CN107566875A CN107566875A CN201710773422.6A CN201710773422A CN107566875A CN 107566875 A CN107566875 A CN 107566875A CN 201710773422 A CN201710773422 A CN 201710773422A CN 107566875 A CN107566875 A CN 107566875A
- Authority
- CN
- China
- Prior art keywords
- component
- dynamic
- content
- top box
- set top
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种在智能机顶盒上UI灵活配置、动态更新的方法,由客户端与服务端提前约定,通过app内各内容的呈现形式、内容及功能等定义不同的组件,对于已定义的组件类型,通过由服务端传递的数据在客户端依次实现三种状态的动态构建,组件使用时,通过声明的方式新建组件,通过构造函数实现组件位置、属性的初始化,最后通过组件内部的回调函数传参实现组件内容的展示,对于后期扩展的组件,因为组件类型的不确定性,初次通过默认组件的形式展示,软件版本升级后添加至组件库,完成新组件的更新,解决在android智能***上界面基础控件元素实时更新的问题,解决在不同智能终端上,由多分辨率引起的UI适配问题。
Description
技术领域
本发明涉及一种在智能机顶盒上UI灵活配置、动态更新的方法,具体涉及android客户端界面绘制与自动生成技术。
背景技术
在三网融合的大背景下,伴随着互联网电视的迅速发展,搭载android***的智能机顶盒以其优良的性能、强大的功能和丰富的应用逐渐成为机顶盒市场的主流品种,得以广泛应用。
目前,android智能机顶盒上的主流应用都是基于B/S或C/S架构来实现的,这两种实现方式各有利弊。基于B/S架构开发的应用通过webview方式即时展示网页内容,可扩展性高,适应增量开发模式,但存在webview的键值适配问题、界面响应速度较慢等问题;而基于C/S架构开发的应用,采用android原生的应用层开发框架,界面响应和展示效果都非常出色,但是不能实时更新界面,应用发布后,如果想把界面换一种布局或者风格,需要在应用程序源码上进行修改,通过程序升级方式重新发布,过程非常繁琐,且影响用户体验。
发明内容
为解决现有技术的不足,本发明的目的在于提供一种在智能机顶盒上灵活配置、动态更新的方法,在保证界面响应和视觉效果的前提下,解决在android智能***上界面基础控件元素实时更新的问题。解决在不同智能终端上,由多分辨率引起的UI适配问题,减少因UI展示效果所增加的开发工作量。
为了实现上述目标,本发明采用如下的技术方案:一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:所述的方法包括如下步骤:
步骤一:由客户端与服务端提前约定,通过app内各内容的呈现形式、内容及功能等定义不同的组件;
步骤二:对于已定义的组件类型,通过由服务端传递的数据在客户端依次实现三种状态的动态构建;
步骤三:组件使用时,通过声明的方式新建组件,通过构造函数实现组件位置、属性的初始化,最后通过组件内部的回调函数传参实现组件内容的展示;
步骤四:对于后期扩展的组件,因为组件类型的不确定性,初次通过默认组件的形式展示,软件版本升级后添加至组件库,完成新组件的更新。
前述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:步骤一中,同种功能不同展现形式的组件需定义不同的类型,不同的组件通过组件id来唯一标识组件类型。
前述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:对于已定义的组件,客户端中需集成封装好的组件库。
前述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:动态构建包括:位置构建、属性构建和内容构建。
前述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:
位置构建,通过leftMargin、topMargin字段确定组件相对父布局的左边距及上边距,从而在界面上唯一确定组件位置。
属性构建,通过Clickable、Focusable、backgroundcolor、Height、Width等属性确定组件是否可点击、是否可以获取焦点、背景颜色、组件高度、组件宽度等,这里的属性字段可根据各组件类型动态扩展,可配置的属性越多,则控件的动态变化内容越丰富。
内容构建,通过defaultImageURL、onfocuseImageURL、selectImageURL、ImageIntent等字段确定组件的默认图片、选中图片、点击事件等内容,内容属性根据具体组件分类定义。
本发明的有益之处在于:应用的所有界面元素通过组件化的方式,由后台数据动态构建,保证了组件位置、属性、内容的可变,确保组件的灵活配置与动态更新,并可直接通过后台获取组件宽高的像素值,再由客户端根据分辨率转换成实际的dp值,保证不同终端、相同的视觉效果,减少了多分辨率带来的UI适配工作量,节省开发成本。
附图说明
图1是本发明一种在智能机顶盒上UI灵活配置、动态更新的方法组件类型设计图;
图2是本发明一种在智能机顶盒上UI灵活配置、动态更新的方法实施例图片组件定义示意图。
具体实施方式
以下结合附图和具体实施例对本发明作具体的介绍。
参照图1、图2所示,本发明一种在智能机顶盒上UI灵活配置、动态更新的方法,将控件声明的步骤进行调整,将各种类型的控件封装成不同的组件,由客户端与服务端共同定义组件类型,再由服务端将组件属性通过通信协议传至客户端,客户端解析后台数据动态生成组件,实现组件的动态更新。所述的方法包括如下步骤:
步骤一:由客户端与服务端提前约定,通过app内各内容的呈现形式、内容及功能等定义不同的组件,同种功能不同展现形式的组件需定义不同的类型,不同的组件通过组件id来唯一标识组件类型;
步骤二:对于已定义的组件类型,通过由服务端传递的数据在客户端依次实现三种状态的动态构建,位置构建,通过leftMargin、topMargin字段确定组件相对父布局的左边距及上边距,从而在界面上唯一确定组件位置。
属性构建,通过Clickable、Focusable、backgroundcolor、Height、Width等属性确定组件是否可点击、是否可以获取焦点、背景颜色、组件高度、组件宽度等,这里的属性字段可根据各组件类型动态扩展,可配置的属性越多,则控件的动态变化内容越丰富。
内容构建,通过defaultImageURL、onfocuseImageURL、selectImageURL、ImageIntent等字段确定组件的默认图片、选中图片、点击事件等内容,内容属性根据具体组件分类定义。;
步骤三:对于已定义的组件,客户端中需集成封装好的组件库,组件使用时,通过声明的方式新建组件,通过构造函数实现组件位置、属性的初始化,最后通过组件内部的回调函数传参实现组件内容的展示;
步骤四:对于后期扩展的组件,因为组件类型的不确定性,初次通过默认组件的形式展示,软件版本升级后添加至组件库,完成新组件的更新。
本发明提出了一种组件化的开发方式,利用组件的概念在保证界面响应和视觉效果的前提下,解决在android智能***上界面基础控件元素实时更新的问题;同时解决在不同智能终端上,由多分辨率引起的UI适配问题。下面以图片组件为例,对本发明组件化开发方式做进一步的详细描述。
步骤一:定义图片组件,组件功能用于显示普通推荐位图片,组件id为3。
步骤二:构建图片组件的位置、属性和内容,图片组件属性如附图2所示。通过左边距、上边距、图片宽、高确定图片组件位置;通过animRation等字段确定图片组件选中后的缩放比例等属性,通过defaultImageURL等字段确定图片组件内容。
步骤三:图片组件的使用:
(1)完成组件库的搭建,我们在客户端中定义MyImageView类实现图片组件,在构造函数中自定义组件布局,并通过解析后台数据获得图片组件的属性,封装onFocusChange、onClick等方法处理组件焦点逻辑与点击事件等。
(2)在客户端构建布局时初始化MyImageView类,并将后台配置的图片元数据传至组件中,完成图片组件的绘制。
本发明具有的优点十分明显:
(1)在保证界面响应和视觉效果的前提下,解决在android智能***上界面基础控件元素实时更新的问题。
基于C/S架构开发的应用,采用android原生的应用层开发框架,界面响应和展示效果都非常出色,但是不能实时更新界面,应用发布后,如果想把界面换一种布局或者风格,需要在应用程序源码上进行修改,通过程序升级方式重新发布,过程非常繁琐,且影响用户体验。本申请中应用的所有界面元素通过组件化的方式,由后台数据动态构建,保证了组件位置、属性、内容的可变,确保组件的灵活配置与动态更新。
(2)解决在不同智能终端上,由多分辨率引起的UI适配问题,减少因UI展示效果所增加的开发工作量。
智能机顶盒与智能手机类似,具有720p、1080p、4k等多种分辨率,通常我们在做智能机顶盒上的应用开发时,需要根据不同的分辨率调整布局文件,达到在不同分辨率的机顶盒上拥有一致的显示效果。采用组件化的开发方式,我们直接通过后台获取组件宽高的像素值,再由客户端根据分辨率转换成实际的dp值,保证不同终端、相同的视觉效果,减少了多分辨率带来的UI适配工作量,节省开发成本
以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
Claims (5)
1.一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:所述的方法包括如下步骤:
步骤一:由客户端与服务端提前约定,通过app内各内容的呈现形式、内容及功能等定义不同的组件;
步骤二:对于已定义的组件类型,通过由服务端传递的数据在客户端依次实现三种状态的动态构建;
步骤三:组件使用时,通过声明的方式新建组件,通过构造函数实现组件位置、属性的初始化,最后通过组件内部的回调函数传参实现组件内容的展示;
步骤四:对于后期扩展的组件,因为组件类型的不确定性,初次通过默认组件的形式展示,软件版本升级后添加至组件库,完成新组件的更新。
2.根据权利要求1所述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:
步骤一中,同种功能不同展现形式的组件需定义不同的类型,不同的组件通过组件id来唯一标识组件类型。
3.根据权利要求1所述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:
对于已定义的组件,客户端中需集成封装好的组件库。
4.根据权利要求1所述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:
动态构建包括:位置构建、属性构建和内容构建。
5.根据权利要求4所述的一种在智能机顶盒上UI灵活配置、动态更新的方法,其特征在于:
位置构建,通过leftMargin、topMargin字段确定组件相对父布局的左边距及上边距,从而在界面上唯一确定组件位置。
属性构建,通过Clickable、Focusable、backgroundcolor、Height、Width等属性确定组件是否可点击、是否可以获取焦点、背景颜色、组件高度、组件宽度等,这里的属性字段可根据各组件类型动态扩展,可配置的属性越多,则控件的动态变化内容越丰富。
内容构建,通过defaultImageURL、onfocuseImageURL、selectImageURL、ImageIntent等字段确定组件的默认图片、选中图片、点击事件等内容,内容属性根据具体组件分类定义。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710773422.6A CN107566875A (zh) | 2017-08-31 | 2017-08-31 | 一种在智能机顶盒上ui灵活配置、动态更新的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710773422.6A CN107566875A (zh) | 2017-08-31 | 2017-08-31 | 一种在智能机顶盒上ui灵活配置、动态更新的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107566875A true CN107566875A (zh) | 2018-01-09 |
Family
ID=60977681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710773422.6A Pending CN107566875A (zh) | 2017-08-31 | 2017-08-31 | 一种在智能机顶盒上ui灵活配置、动态更新的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107566875A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108733443A (zh) * | 2018-05-09 | 2018-11-02 | 成都市极米科技有限公司 | 一种基于Android***的APP动态配置***及其实现方法、动态配置方法 |
CN109714620A (zh) * | 2018-12-27 | 2019-05-03 | 山东浪潮商用***有限公司 | 一种基于机顶盒的界面可视化编辑及显示方法及*** |
CN110045999A (zh) * | 2019-04-23 | 2019-07-23 | 北京三快在线科技有限公司 | 绘制组件的方法、装置、终端和存储介质 |
CN114443029A (zh) * | 2020-11-04 | 2022-05-06 | 武汉斗鱼鱼乐网络科技有限公司 | 一种引导界面组件的生成方法及相关装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120117504A1 (en) * | 2008-06-06 | 2012-05-10 | Apple Inc. | User Interface for Application Management for a Mobile Device |
CN104850428A (zh) * | 2015-04-23 | 2015-08-19 | 百度在线网络技术(北京)有限公司 | 一种更新移动客户端的用户界面的方法与装置 |
CN105242937A (zh) * | 2014-06-27 | 2016-01-13 | 中兴通讯股份有限公司 | 一种动态更新应用界面的方法、终端及*** |
CN106201458A (zh) * | 2016-06-27 | 2016-12-07 | 上海波汇科技股份有限公司 | 一种灵活可配的界面生成方法和*** |
-
2017
- 2017-08-31 CN CN201710773422.6A patent/CN107566875A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120117504A1 (en) * | 2008-06-06 | 2012-05-10 | Apple Inc. | User Interface for Application Management for a Mobile Device |
CN105242937A (zh) * | 2014-06-27 | 2016-01-13 | 中兴通讯股份有限公司 | 一种动态更新应用界面的方法、终端及*** |
CN104850428A (zh) * | 2015-04-23 | 2015-08-19 | 百度在线网络技术(北京)有限公司 | 一种更新移动客户端的用户界面的方法与装置 |
CN106201458A (zh) * | 2016-06-27 | 2016-12-07 | 上海波汇科技股份有限公司 | 一种灵活可配的界面生成方法和*** |
Non-Patent Citations (3)
Title |
---|
王小科: "《C#程序开发参考手册》", 31 August 2013, 北京:机械工业出版社 * |
高凯: "Activity界面布局", 《ANDROID程序设计基础教程》 * |
黄心渊等: "《图形图像制作环境》", 31 July 2004, 北京:高等教育出版社 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108733443A (zh) * | 2018-05-09 | 2018-11-02 | 成都市极米科技有限公司 | 一种基于Android***的APP动态配置***及其实现方法、动态配置方法 |
CN109714620A (zh) * | 2018-12-27 | 2019-05-03 | 山东浪潮商用***有限公司 | 一种基于机顶盒的界面可视化编辑及显示方法及*** |
CN110045999A (zh) * | 2019-04-23 | 2019-07-23 | 北京三快在线科技有限公司 | 绘制组件的方法、装置、终端和存储介质 |
CN114443029A (zh) * | 2020-11-04 | 2022-05-06 | 武汉斗鱼鱼乐网络科技有限公司 | 一种引导界面组件的生成方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107566875A (zh) | 一种在智能机顶盒上ui灵活配置、动态更新的方法 | |
CN102662616B (zh) | 用于移动终端的屏幕图形自适应方法及*** | |
CN103281575B (zh) | 一种智能电视新型控制方法 | |
CN105786526B (zh) | 一种基于Web的高效流程图绘制***及方法 | |
CN102915375B (zh) | 一种基于布局分区的网页加载方法 | |
CN102394778B (zh) | 网络拓扑的显示方法及装置 | |
CN101751028B (zh) | 汽车电控单元通用标定***及实现方法 | |
CN111078169B (zh) | 一种可视化大屏***的前端装置及其搭建方法 | |
CN103631958B (zh) | 一种页面自动适配实现内容多屏展示的方法 | |
US20160283096A1 (en) | Method of generating a link by utilizing a picture and system thereof | |
CN104007967B (zh) | 一种基于可扩展标记语言的用户界面生成方法和装置 | |
CN103530379B (zh) | 树形结构数据显示方法与装置 | |
CN109636887A (zh) | 一种二维电子技术图纸格式转换及矢量化交互*** | |
CN105282321A (zh) | 一种应用软件用户界面与显示设备的适配方法 | |
CN102364460B (zh) | 基于移动终端的页面自动放大方法和*** | |
CN103577568A (zh) | 一种跨平台的移动安全综合信息聚合***及其方法 | |
CN102855315A (zh) | 一种基于html5的集群网络拓扑展现方法 | |
CN102236709A (zh) | 一种基于Flex的监控页面显示方法及*** | |
CN106792103A (zh) | 机顶盒端首页小窗口展现多个推荐位图的方法及机顶盒 | |
US20230147594A1 (en) | Method for integratedly updating map data, device and storage medium | |
CN101546546B (zh) | 一种网络数据转换装置及其数据转换控制方法 | |
CN103678317A (zh) | 网页布局的自动适配方法与*** | |
CN107438194A (zh) | 一种智能电视ui对象绘制方法及智能电视 | |
CN103902539A (zh) | 可扩展标记语言数据解析方法及装置 | |
CN106649428A (zh) | 存储文件的解析方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190321 Address after: 210006 Tongyu Building, 501 Zhongshan South Road, Nanjing City, Jiangsu Province Applicant after: Tianyi Smart Family Technology Co., Ltd. Address before: 210006 Tongyu Building, 501 Zhongshan South Road, Nanjing City, Jiangsu Province Applicant before: Jiangsu Public Information Co., Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180109 |
|
RJ01 | Rejection of invention patent application after publication |