CN106528309A - 一种更新操作界面的更新系统及更新方法 - Google Patents
一种更新操作界面的更新系统及更新方法 Download PDFInfo
- Publication number
- CN106528309A CN106528309A CN201611085111.2A CN201611085111A CN106528309A CN 106528309 A CN106528309 A CN 106528309A CN 201611085111 A CN201611085111 A CN 201611085111A CN 106528309 A CN106528309 A CN 106528309A
- Authority
- CN
- China
- Prior art keywords
- broadcast
- interface
- event
- monitoring
- operation interface
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种更新操作界面的更新系统,涉及计算机操作界面技术领域,包括广播监听模块,用于在系统中注册监听事件;在广播监听模块中为需要广播的操作界面进行接口注册;当发生监听事件时,接收操作系统发送的监听事件的广播;对接收的广播进行解析,解析出监听事件的具体信息;将监听事件的具体信息通过已注册的接口发送到各操作界面;界面更新模块,用于根据广播监听模块发送的监听事件的具体信息更新操作界面,操作界面的更新效率更高。本发明还公开了一种更新操作界面的更新方法。
Description
技术领域
本发明涉及计算机操作界面技术领域,具体涉及一种更新操作界面的更新系统及更新方法。
背景技术
传统的操作系统变化通知方式是通过广播监听器去监听操作系统环境的变化情况,当操作系统环境发生变化的时候只能够在广播接收器中接受到相应的操作系统环境变化信息,如操作系统网络类型变化。在实际使用过程中,通常系统环境变化一般都会引起操作界面的一些变化,常规做法是自己在广播接收器中再次将操作系统环境变化的广播再次进行转发处理,转发广播消息到主线程后,主线程再对操作界面的展示进行更新。
通过上述描述发现,常规方法对于通过监听操作系统环境变化广播来更新操作界面的方式上存在多次转发的问题,在这样的使用情况下由于对广播进行了多次转发,导致更新过程效率低下,且多次转发使得操作界面的代码结构复杂难以维护。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种更新操作界面的更新系统及更新方法,操作界面的更新效率更高。
为达到以上目的,本发明采取的技术方案是:一种更新操作界面的更新系统,包括:广播监听模块,用于在操作系统中注册监听事件;在广播监听模块中为需要广播的操作界面进行接口注册;当发生监听事件时,接收操作系统发送的监听事件的广播;对接收的广播进行解析,解析出监听事件的具体信息;将监听事件的具体信息通过已注册的接口发送到各操作界面;
界面更新模块,用于根据广播监听模块发送的监听事件的具体信息更新操作界面。
在上述技术方案的基础上,所述广播监听模块包括:
广播监听单元,在操作系统中注册监听事件;当发生监听事件时,接收操作系统发送的监听事件的广播;
广播解析单元,对广播监听单元接收的广播进行解析,解析出监听事件的具体信息;
接口注册单元,在广播监听模块中为需要广播的操作界面进行接口注册;
接口发送单元,用于将监听事件的具体信息通过已注册的接口发送到各操作界面。
在上述技术方案的基础上,操作系统将监听事件通过静态广播发送至广播监听模块。
在上述技术方案的基础上,操作系统将监听事件通过动态广播发送至广播监听模块。
本发明还公开了一种采用所述更新操作界面的更新系统的更新方法:
广播监听模块在操作系统中注册监听事件;
在广播监听模块中为需要广播的操作界面进行接口注册;
当发生监听事件时,广播监听模块接收操作系统发送的监听事件的广播;
广播监听模块对接收的广播进行解析,解析出监听事件的具体信息;
广播监听模块将监听事件的具体信息通过已注册的接口发送到各操作界面;
界面更新模块根据广播监听模块发送的监听事件的具体信息更新操作界面。
在上述技术方案的基础上,所述监听事件为当前网络类型。
在上述技术方案的基础上,广播监听模块在操作系统中注册监听事件包括:在操作系统的清单文件中添加广播接收标签、广播类型过滤标签和广播事件过滤标签,所述广播接收标签指向所述广播监听模块,用于当发生监听事件时,操作系统将发送的监听事件的广播发送至所述广播监听模块,所述广播类型过滤标签用于过滤出广播监听模块接收的广播类型,所述广播事件过滤标签用于过滤出广播监听模块接收的广播事件。
在上述技术方案的基础上,在广播监听模块中为需要广播的操作界面进行接口注册包括:
在需要接收监听事件的具体信息的操作界面中创建接口;
将全部接口加入接口集合中。
在上述技术方案的基础上,广播监听模块对接收的广播进行解析,解析出监听事件的具体信息包括:
获取到当前操作系统的连接管理者;
获取连接管理者中监听事件的具体信息结构体,获取到的监听事件的具体信息结构体中包含了监听事件的具体信息的描述信息;
获取监听事件的具体信息结构体中监听事件的具体信息的描述信息。
在上述技术方案的基础上,广播监听模块将监听事件的具体信息通过已注册的接口发送到各操作界面包括:遍历接口集合,然后通过各接口将监听事件的具体信息发送给需要接收监听事件的具体信息的操作界面。
与现有技术相比,本发明的优点在于:
(1)本发明中直接通过操作界面的接口向操作界面发送监听事件的具体信息,界面更新模块回调多个接口中的监听事件的具体信息来实现对多个操作界面进行同时更新。接口的回调是实时响应的,当监听事件的具体信息解析完成后可以立即发送至界面更新模块处理,期间没有类似于广播的延时问题,所以接口回调速度相比于广播转发速度有大幅度的提升,操作界面的更新效率更高。
(2)本发明中广播监听模块向操作界面发送的是解析后的监听事件的具体信息,界面更新模块可直接根据监听事件的具体信息进行更新,无须再次解析,提升了数据获取速度。
附图说明
图1为本发明实施例中更新操作界面的更新系统的结构示意图;
图2为本发明实施例中更新操作界面的更新方法的结构示意图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例提供一种更新操作界面的更新系统,包括:广播监听模块,用于在操作系统中注册监听事件;在广播监听模块中为需要广播的操作界面进行接口注册;当发生监听事件时,接收操作系统发送的监听事件的广播;对接收的广播进行解析,解析出监听事件的具体信息;将监听事件的具体信息通过已注册的接口发送到各操作界面;界面更新模块,用于根据广播监听模块发送的监听事件的具体信息更新操作界面。本发明中直接通过操作界面的接口向操作界面发送监听事件的具体信息,界面更新模块回调多个接口中的监听事件的具体信息来实现对多个操作界面进行同时更新。接口的回调是实时响应的,当监听事件的具体信息解析完成后可以立即发送至界面更新模块处理,期间没有类似于广播的延时问题,所以接口回调速度相比于广播转发速度有大幅度的提升,操作界面的更新效率更高。同时,广播监听模块向操作界面发送的是解析后的监听事件的具体信息,界面更新模块可直接根据监听事件的具体信息进行更新,无须再次解析,提升了数据获取速度。
所述广播监听模块包括:
广播监听单元,在操作系统中注册监听事件;当发生监听事件时,接收操作系统发送的监听事件的广播;
广播解析单元,对广播监听单元接收的广播进行解析,解析出监听事件的具体信息;
接口注册单元,在广播监听模块中为需要广播的操作界面进行接口注册;
接口发送单元,用于将监听事件的具体信息通过已注册的接口发送到各操作界面。
操作系统将监听事件通过静态广播发送至广播监听模块。操作系统将监听事件通过动态广播发送至广播监听模块。本发明中对于静态广播和动态广播都能够适用。静态广播和动态广播最大的区别点在于静态广播可以不启动应用程序的情况下接受到广播消息。动态广播必须得启动应用程序的情况下才能够接受到广播消息。
参见图2所示,本发明还公开了一种采用更新操作界面的更新系统的更新方法,包括以下步骤:
S1,广播监听模块在操作系统中注册监听事件;
S2,在广播监听模块中为需要广播的操作界面进行接口注册;
S3,当发生监听事件时,广播监听模块接收操作系统发送的监听事件的广播;
S4,广播监听模块对接收的广播进行解析,解析出监听事件的具体信息;
S5,广播监听模块将监听事件的具体信息通过已注册的接口发送到各操作界面;
S6,界面更新模块根据广播监听模块发送的监听事件的具体信息更新操作界面。
广播监听模块在操作系统中注册监听事件包括:在操作系统的清单文件AndroidManifest.xml中添加广播接收标签、广播类型过滤标签和广播事件过滤标签,所述广播接收标签指向所述广播监听模块,用于当发生监听事件时,操作系统将发送的监听事件的广播发送至所述广播监听模块,所述广播类型过滤标签用于过滤出广播监听模块接收的广播类型,所述广播事件过滤标签用于过滤出广播监听模块接收的广播事件。
例如,广播监听模块在操作系统中注册监听事件具体添加内容如下所示:
<receiver android:name="com.android.test.NetBroadcastReceiver">
<intent-filter>
<actionandroid:name="android.net.conn.CONNECTIVITY_CHAN GE"/>
</intent-filter>
</receiver>
其中:
Receiver标签表示操作系统的广播接收标签,这个标签标表示接下来的信息是一个广播接收装置。
NetBroadcastReceiver是用户自定义的广播接收器。用户自定义的广播接收器NetBroadcastReceiver用于接受操作系统的网络变化广播信息。广播接收器设于广播监听模块中。
intent-filter标签表示广播类型过滤标签,操作系统的广播种类有非常多,只有广播类型过滤标签中标注的广播类型才能够进行接受。
action标签表示广播事件过滤标签,具体事件内容是android.net.conn.CONNECTIVITY_CHANGE,其中android.net.conn.CONNECTIVITY_CHANGE这个表示监听事件。广播监听模块在操作系统中注册监听事件后,当发生监听事件时,广播监听模块就能接收操作系统发送的监听事件的广播了。
NetBroadcastReceiver继承自系统的BroadcastReceiver,且需重写其中的onReceive方法,重写onReceive方法后当操作系统网络发生变化的时候后操作系统会将网络变化的广播消息发送给广播接收器NetBroadcastReceiver中的onReceive方法中,这样就能够在onReceive方法中将广播消息通过接口的方式通知给操作界面去更新操作界面。在通知操作界面之前,需要接收监听事件的具体信息的操作界面首先得在广播监听模块中进行接口注册,只有已注册的接口的操作界面才会接到通知。
在广播监听模块中为需要广播的操作界面进行接口注册包括:在需要接收监听事件的具体信息的操作界面中创建接口;将全部接口加入广播监听模块中的接口集合中。
例如,监听事件为当前网络类型,在操作界面中创建一个接口:
public interface ReceiverBroadcast{
public void netChange(int netType);}
接口名称是ReceiverBroadcast,里面有一个函数是netChange,这个函数用于通知当前网络类型的信息的。netType表示当前网络类型。
广播监听模块对接收的广播进行解析,解析出监听事件的具体信息包括:获取到当前操作系统的连接管理者;获取连接管理者中当前网络信息结构体,获取到的当前网络信息结构体中包含了监听事件的具体信息的描述信息;获取当前网络信息结构体中监听事件的具体信息的描述信息。
例如,监听事件为当前网络类型,广播监听模块对接收的广播进行解析,解析出监听事件的具体信息包括:
通过函数getSystemService(Context.CONNECTIVITY_SERVICE)来获取到当前操作系统的ConnectivityManager连接管理者。
调用管理者类中的getActiveNetworkInfo函数来获取当前网络信息结构体NetInfo,获取到的当前网络信息结构体NetInfo中包含了当前网络类型的描述信息。
调研当前网络信息结构体NetInfo中的getType函数,返回当前网络类型的信息,根据getType返回的信息来确定当前网络类型。
网络类型分为下面几类:
NETWORK_CLASS_2_G:当前网络是2G网络
NETWORK_CLASS_3_G:当前网络是3G网络
NETWORK_CLASS_4_G:当前网络是4G网络
TYPE_WIFI:当前网络是WIFI网络
广播监听模块将监听事件的具体信息通过已注册的接口发送到各操作界面包括:遍历接口集合,然后通过各接口将监听事件的具体信息发送给需要接收监听事件的具体信息的操作界面。
例如,监听事件为当前网络类型,界面更新模块根据广播监听模块发送的监听事件的具体信息更新操作界面包括:界面更新模块回调接口中的netChange函数中的netType信息,可以根据netType区分当前网络环境的类型。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (10)
1.如权利要求1所述的一种更新操作界面的更新系统,其特征在于,包括:
广播监听模块,用于在操作系统中注册监听事件;在广播监听模块中为需要广播的操作界面进行接口注册;当发生监听事件时,接收操作系统发送的监听事件的广播;对接收的广播进行解析,解析出监听事件的具体信息;将监听事件的具体信息通过已注册的接口发送到各操作界面;
界面更新模块,用于根据广播监听模块发送的监听事件的具体信息更新操作界面。
2.如权利要求1所述的一种更新操作界面的更新系统,其特征在于:所述广播监听模块包括:
广播监听单元,在系统中注册监听事件;当发生监听事件时,接收操作系统发送的监听事件的广播;
广播解析单元,对广播监听单元接收的广播进行解析,解析出监听事件的具体信息;
接口注册单元,在广播监听模块中为需要广播的操作界面进行接口注册;
接口发送单元,用于将监听事件的具体信息通过已注册的接口发送到各操作界面。
3.如权利要求1所述的一种更新操作界面的更新系统,其特征在于:操作系统将监听事件通过静态广播发送至广播监听模块。
4.如权利要求1所述的一种更新操作界面的更新系统,其特征在于:操作系统将监听事件通过动态广播发送至广播监听模块。
5.一种采用如权利要求1-4任意一项所述更新操作界面的更新系统的更新方法,其特征在于:
广播监听模块在操作系统中注册监听事件;
在广播监听模块中为需要广播的操作界面进行接口注册;
当发生监听事件时,广播监听模块接收操作系统发送的监听事件的广播;
广播监听模块对接收的广播进行解析,解析出监听事件的具体信息;
广播监听模块将监听事件的具体信息通过已注册的接口发送到各操作界面;
界面更新模块根据广播监听模块发送的监听事件的具体信息更新操作界面。
6.如权利要求5所述的一种采用更新操作界面的更新系统的更新方法,其特征在于:所述监听事件为当前网络类型。
7.如权利要求5所述的一种采用更新操作界面的更新系统的更新方法,其特征在于:广播监听模块在操作系统中注册监听事件包括:在操作系统的清单文件中添加广播接收标签、广播类型过滤标签和广播事件过滤标签,所述广播接收标签指向所述广播监听模块,用于当发生监听事件时,操作系统将发送的监听事件的广播发送至所述广播监听模块,所述广播类型过滤标签用于过滤出广播监听模块接收的广播类型,所述广播事件过滤标签用于过滤出广播监听模块接收的广播事件。
8.如权利要求5所述的一种采用更新操作界面的更新系统的更新方法,其特征在于:在广播监听模块中为需要广播的操作界面进行接口注册包括:
在需要接收监听事件的具体信息的操作界面中创建接口;
将全部接口加入接口集合中。
9.如权利要求5所述的一种采用更新操作界面的更新系统的更新方法,其特征在于:广播监听模块对接收的广播进行解析,解析出监听事件的具体信息包括:
获取到当前操作系统的连接管理者;
获取连接管理者中监听事件的具体信息结构体,获取到的监听事件的具体信息结构体中包含了监听事件的具体信息的描述信息;
获取监听事件的具体信息结构体中监听事件的具体信息的描述信息。
10.如权利要求5所述的一种采用更新操作界面的更新系统的更新方法,其特征在于:广播监听模块将监听事件的具体信息通过已注册的接口发送到各操作界面包括:遍历接口集合,然后通过各接口将监听事件的具体信息发送给需要接收监听事件的具体信息的操作界面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611085111.2A CN106528309A (zh) | 2016-11-30 | 2016-11-30 | 一种更新操作界面的更新系统及更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611085111.2A CN106528309A (zh) | 2016-11-30 | 2016-11-30 | 一种更新操作界面的更新系统及更新方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106528309A true CN106528309A (zh) | 2017-03-22 |
Family
ID=58354585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611085111.2A Pending CN106528309A (zh) | 2016-11-30 | 2016-11-30 | 一种更新操作界面的更新系统及更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106528309A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107092485A (zh) * | 2017-03-28 | 2017-08-25 | 武汉斗鱼网络科技有限公司 | 一种Tab标签动态更新方法及装置 |
CN112346623A (zh) * | 2020-10-27 | 2021-02-09 | 深圳Tcl新技术有限公司 | 终端设备及其控制方法、可读存储介质 |
CN114064330A (zh) * | 2022-01-12 | 2022-02-18 | 广东睿江云计算股份有限公司 | 基于OpenVidu的钩子回调广播转发方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120054853A1 (en) * | 2010-08-24 | 2012-03-01 | International Business Machines Corporation | Systems and methods to control device endpoint behavior using personae and policies |
CN103914316A (zh) * | 2012-12-31 | 2014-07-09 | 希姆通信息技术(上海)有限公司 | 安卓系统中自动开机和自动关机的设置方法 |
CN105573757A (zh) * | 2015-12-15 | 2016-05-11 | Tcl集团股份有限公司 | Android系统的语言更新方法及装置 |
CN105677545A (zh) * | 2015-12-29 | 2016-06-15 | 青岛海信电器股份有限公司 | 一种基于移动设备的界面处理方法和装置 |
US20160309302A1 (en) * | 2014-12-12 | 2016-10-20 | David Thomas | Systems and methods for determining texting locations and network coverage |
-
2016
- 2016-11-30 CN CN201611085111.2A patent/CN106528309A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120054853A1 (en) * | 2010-08-24 | 2012-03-01 | International Business Machines Corporation | Systems and methods to control device endpoint behavior using personae and policies |
CN103914316A (zh) * | 2012-12-31 | 2014-07-09 | 希姆通信息技术(上海)有限公司 | 安卓系统中自动开机和自动关机的设置方法 |
US20160309302A1 (en) * | 2014-12-12 | 2016-10-20 | David Thomas | Systems and methods for determining texting locations and network coverage |
CN105573757A (zh) * | 2015-12-15 | 2016-05-11 | Tcl集团股份有限公司 | Android系统的语言更新方法及装置 |
CN105677545A (zh) * | 2015-12-29 | 2016-06-15 | 青岛海信电器股份有限公司 | 一种基于移动设备的界面处理方法和装置 |
Non-Patent Citations (2)
Title |
---|
NANCHEN: "APP没有退出前台但改变系统属性如何实时更新UI?监听系统广播,让用户交互更舒心", 《HTTP://WWW.CNBLOGS.COM/LIUSHILIN/P/6037466.HTML》 * |
VICLEE: "Android Service更新UI的方法之AIDL", 《HTTPS://BLOG.CSDN.NET/GOODLIXUEYONG/ARTICLE/DETAILS/50299963》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107092485A (zh) * | 2017-03-28 | 2017-08-25 | 武汉斗鱼网络科技有限公司 | 一种Tab标签动态更新方法及装置 |
CN112346623A (zh) * | 2020-10-27 | 2021-02-09 | 深圳Tcl新技术有限公司 | 终端设备及其控制方法、可读存储介质 |
CN114064330A (zh) * | 2022-01-12 | 2022-02-18 | 广东睿江云计算股份有限公司 | 基于OpenVidu的钩子回调广播转发方法及系统 |
CN114064330B (zh) * | 2022-01-12 | 2022-05-13 | 广东睿江云计算股份有限公司 | 基于OpenVidu的钩子回调广播转发方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103430483B (zh) | 用于确定通信系统中的关联事件的技术 | |
CN102917069B (zh) | 与设备无关性的医疗信息采集中间件装置及其设计方法 | |
CN106649055A (zh) | 一种基于国产cpu和操作系统的软硬件故障告警系统及方法 | |
US20110151828A1 (en) | Method and system for transmitting the notification message in earthquake and tsunami warning system | |
CN106528309A (zh) | 一种更新操作界面的更新系统及更新方法 | |
CN103646437B (zh) | 基于ic卡和gsm通信方式的学生考勤方法及系统 | |
CN104092577B (zh) | 一种网络告警通知系统及其通知方法 | |
US20220070071A1 (en) | Data handler | |
US20040083246A1 (en) | Method and system for performance management in a computer system | |
CN106576056A (zh) | 用于改变取回监测数据的频率的系统和方法 | |
CN104202328B (zh) | 一种订阅goose/smv报文的方法、配置模块及订阅端 | |
CN108011979A (zh) | 一种智能公厕远程监控系统 | |
EP2882216B1 (en) | Device and method for controlling, supervising and giving an alarming from a power supply of base station | |
WO2015196636A1 (zh) | 一种报文采集方法、系统、网络设备及网管中心 | |
CN104104568B (zh) | 用于从通信总线采集数据的方法、装置及系统 | |
CN101119275B (zh) | 使业务提供商设备获取信息的方法、设备和系统 | |
CN103763325B (zh) | 构建ip安防产品开发环境的方法 | |
CN103957266B (zh) | 一种通信系统的设备集中控制方法 | |
CN108171640A (zh) | 船舶通信系统数据存储系统和统计方法 | |
Huang | Architecture of audio broadcasting coverage monitoring system based on internet of things | |
CN109639545B (zh) | 多星测控平台系统的轻量级总线布置方法 | |
CN104040951B (zh) | 告警相关信息的传输方法和装置 | |
CN103916458A (zh) | 基于短信技术的电力企业内部应用程序远程监控系统 | |
CN101567904B (zh) | 一种动态内容分发业务中的上报方法及终端 | |
CN106375116B (zh) | 一种网元设备配置信息查看系统及其工作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170322 |