CN107577540B - 视频交友中实现举报功能的方法、存储介质、设备及系统 - Google Patents
视频交友中实现举报功能的方法、存储介质、设备及系统 Download PDFInfo
- Publication number
- CN107577540B CN107577540B CN201710770993.4A CN201710770993A CN107577540B CN 107577540 B CN107577540 B CN 107577540B CN 201710770993 A CN201710770993 A CN 201710770993A CN 107577540 B CN107577540 B CN 107577540B
- Authority
- CN
- China
- Prior art keywords
- message
- report
- control
- dialog box
- controller
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000012544 monitoring process Methods 0.000 claims abstract description 84
- 238000012545 processing Methods 0.000 claims abstract description 72
- 230000000694 effects Effects 0.000 claims abstract description 66
- 238000004891 communication Methods 0.000 claims abstract description 30
- 230000008569 process Effects 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims description 84
- 238000012790 confirmation Methods 0.000 claims description 33
- 230000001360 synchronised effect Effects 0.000 claims description 32
- 230000005540 biological transmission Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
Images
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
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)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种视频交友中实现举报功能的方法、存储介质、设备及系统,涉及直播应用中的程序开发技术领域。该方法包括:当用户点击举报按钮时,弹出举报功能对话框,该对话框的UI层业务逻辑封装在预设的对话框监控类中;当对话框监控类监听到确认/取消举报控件的点击事件后,利用对话框监控类中预设的消息通信协议将相应的点击消息传递至控制层的控制器中;若控制器收到的是确认举报控件的点击消息,则进行举报上传相关业务逻辑的处理,并将处理结果的消息反馈至Activity页面;Activity页面将根据处理结果的消息更新当前界面上的视图元素。本发明能够将举报功能的业务逻辑与Activity页面进行解耦,极大的提高程序的可扩展性和可维护性。
Description
技术领域
本发明涉及直播应用中的程序开发技术领域,具体来讲是一种视频交友中实现举报功能的方法、存储介质、设备及系统。
背景技术
随着移动终端的快速发展,特别是手机移动终端的快速发展,直播行业越来越受欢迎,很多用户喜欢通过移动终端设备来观看直播。而在各种直播APP(Application,应用程序)的开发过程中,通常会设计一个子功能——视频交友功能。该视频交友功能主要是方便两个人之间进行信息交流而使用的。但随着用户对视频交友功能的使用需求越来越高,为了满足用户在视频交友过程中的举报需求,会在视频交友过程中设计一个举报功能。该举报功能主要是将举报之前的一段时间的音频文件上传到直播平台的服务器,再由人工根据上传的音频文件来对交由过程中的问题进行鉴别。
传统的在视频交友过程中实现举报功能的设计是将举报的相关业务直接耦合在实现举报功能的Activity中(Activity可以简单的理解为一个页面,主要用于提供一个页面供用户用来交互而完成某项任务),然后直接在Activity页面中监听举报的消息事件。传统的这种方式最大的问题是将举报这种功能单一的逻辑直接耦合到Activity页面中来进行实现了,这样会使得Activity页面中的业务逻辑变得异常的复杂且与Activity页面的耦合性太高,降低了代码的可维护性及扩展性。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种视频交友中实现举报功能的方法、存储介质、设备及系统,能够有效的将举报功能的业务逻辑与Activity页面进行分离,极大的提高程序的可扩展性和可维护性。
为达到以上目的,本发明采取的技术方案是:提供一种视频交友中实现举报功能的方法,该方法包括以下步骤:
S1、当用户在实现举报功能的Activity页面中点击举报按钮时,弹出举报功能对话框;该举报功能对话框具有确认举报控件和取消举报控件,且该举报功能对话框的UI层的业务逻辑封装在预设的对话框监控类中,该对话框监控类用于监听确认举报控件、取消举报控件的点击事件,且该对话框监控类中预设有用于与控制层中控制器进行消息传递的消息通信协议;
S2、当所述对话框监控类监听到确认举报控件或取消举报控件的点击事件后,利用所述对话框监控类中预设的消息通信协议,将确认举报控件或取消举报控件的点击消息传递至用于处理举报上传相关业务逻辑的控制器中;
S3、若所述控制器收到确认举报控件的点击消息,则进行举报上传相关业务逻辑的处理,并将处理结果的消息反馈至Activity页面的UI层中;Activity页面将根据处理结果的消息更新当前界面上的视图元素。
在上述技术方案的基础上,若控制层中有多个控制器需要获取对话框监控类传递的点击消息时,步骤S2包括以下操作;
在预设的对话框监控类中定义一个局部集合变量,该局部集合变量用于保存控制层中需要获取点击消息的所有控制器对象,且每个控制器对象的类型均为消息通信协议对象;在预设的对话框监控类中定义一个注册方法,在该注册方法中通过调用局部集合变量添加方法将需要获取点击消息的控制器对象加入到局部集合变量中;一旦对话框监控类监听到确认举报控件或取消举报控件的点击事件后,会遍历当前局部集合变量中的所有控制器对象,并通过调用每个控制器对象对应的消息通信协议对象,将确认举报控件或取消举报控件的点击消息传递至控制层中相应的控制器中。
在上述技术方案的基础上,步骤S3中,控制器将处理结果的消息反馈至Activity页面的UI层中,具体包括以下操作:
在控制器与Activity页面之间创建一个事件路由器,在该事件路由器的内部定义一个同步队列及一个消息判断循环逻辑体,所述消息判断循环逻辑体用于判定同步队列中是否有消息,如果有消息就直接将该消息发送到Activity页面的UI层中,如果没有,就进入下一次循环判断逻辑中;
当控制器进行举报上传相关业务逻辑的处理后,将处理结果的消息传递到事件路由器中;该事件路由器会自动将收到的处理结果的消息压入到同步队列中;当下次消息判断循环逻辑体判定同步队列中具有处理结果的消息时,该事件路由器从同步队列中取出该处理结果的消息并发送到Activity页面的UI层中。
在上述技术方案的基础上,步骤S3还包括以下操作:若所述控制器收到取消举报控件的点击消息,则关闭举报功能对话框并结束操作。
本发明还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述视频交友中实现举报功能的方法的步骤。
本发明还提供一种视频交友中实现举报功能的设备,包括存储器、处理器及存储在存储器上并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述视频交友中实现举报功能的方法的步骤。
本发明还提供一种视频交友中实现举报功能的系统,该系统包括事件监听模块、消息传递模块和页面视图更新模块;
所述事件监听模块用于:当用户在实现举报功能的Activity页面中点击举报按钮时,弹出举报功能对话框;该举报功能对话框具有确认举报控件和取消举报控件,且该举报功能对话框的UI层的业务逻辑封装在预设的对话框监控类中,该对话框监控类用于监听确认举报控件、取消举报控件的点击事件,且该对话框监控类中预设有用于与控制层中控制器进行消息传递的消息通信协议;
所述消息传递模块用于:当对话框监控类监听到确认举报控件或取消举报控件的点击事件后,利用对话框监控类中预设的消息通信协议,将确认举报控件或取消举报控件的点击消息传递至用于处理举报上传相关业务逻辑的控制器中;
所述页面视图更新模块用于:当控制器收到确认举报控件的点击消息时,利用控制器进行举报上传相关业务逻辑的处理,并利用控制器将处理结果的消息反馈至Activity页面的UI层中;控制Activity页面将根据处理结果的消息更新当前界面上的视图元素。
在上述技术方案的基础上,若控制层中有多个控制器需要获取对话框监控类传递的点击消息时,所述消息传递模块进行消息传递操作的具体流程为:
在预设的对话框监控类中定义一个局部集合变量,该局部集合变量用于保存控制层中需要获取点击消息的所有控制器对象,且每个控制器对象的类型均为消息通信协议对象;在预设的对话框监控类中定义一个注册方法,在该注册方法中通过调用局部集合变量添加方法将需要获取点击消息的控制器对象加入到局部集合变量中;一旦对话框监控类监听到确认举报控件或取消举报控件的点击事件后,遍历当前局部集合变量中的所有控制器对象,并通过调用每个控制器对象对应的消息通信协议对象,将确认举报控件或取消举报控件的点击消息传递至控制层中相应的控制器中。
在上述技术方案的基础上,所述页面视图更新模块利用控制器将处理结果的消息反馈至Activity页面的UI层中的具体流程为:
在控制器与Activity页面之间创建一个事件路由器,在该事件路由器的内部定义一个同步队列及一个消息判断循环逻辑体,所述消息判断循环逻辑体用于判定同步队列中是否有消息,如果有消息就直接将该消息发送到Activity页面的UI层中,如果没有,就进入下一次循环判断逻辑中;
当控制器进行举报上传相关业务逻辑的处理后,利用控制器将处理结果的消息传递到事件路由器中;该事件路由器会自动将收到的处理结果的消息压入到同步队列中;当下次消息判断循环逻辑体判定同步队列中具有处理结果的消息时,该事件路由器从同步队列中取出该处理结果的消息并发送到Activity页面的UI层中。
在上述技术方案的基础上,所述页面视图更新模块还用于:当控制器收到取消举报控件的点击消息时,关闭举报功能对话框并结束操作。
本发明的有益效果在于:
(1)本发明中,将UI层的业务逻辑全部封装到一个预设的对话框监控类中,该类能将举报功能的UI层业务逻辑的实现进行独立,从而达到将UI层的业务逻辑与Activity进行隔离的目的;与此同时,还利用该对话框监控类来实现控件的点击消息向控制层的传递,使得控制层中的控制器只需监听对话框监控类传递的消息即可,这样控制器内部就可以做到与UI层无关的业务逻辑处理了,从而使得控制层的业务逻辑能与UI层的业务逻辑解耦开。
由此可见,本发明能够有效的解耦举报功能的业务逻辑与Activity页面之间的耦合关系,使得举报功能的业务逻辑更加独立,不但极大的提高程序的可扩展性和可维护性,而且使得举报功能在后期具备更好的复用性,降低了开发成本。
(2)本发明中,针对实际应用中会出现多个控制器需要通过获取控件的点击消息来实现多个功能需求的情况,做出了特殊的设计处理,不但满足了多控制器获取点击消息的使用需求,而且使得本发明的适用性更广、可拓展性更强。
(3)本发明中控制层中的控制器是通过一个事件路由器将处理结果的消息反馈至Activity页面的UI层中的,进一步保证了控制层能更顺利、准确地将处理结果的消息反馈至Activity页面的UI层中。并且,该事件路由器中使用的是同步队列,可以有效的避免消息并发所产生的异常问题,可靠性高。
附图说明
图1为本发明实施例中视频交友中实现举报功能的方法的流程图;
图2为本发明实施例中视频交友中实现举报功能的设备的结构示意图;
图3为本发明实施例中视频交友中实现举报功能的系统的结构框图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
参见图1所示,本发明实施例提供一种视频交友中实现举报功能的方法,该方法包括以下步骤:
步骤S1、当用户在实现举报功能的Activity页面中点击举报按钮时,弹出举报功能对话框;该举报功能对话框具有确认举报控件和取消举报控件,且该举报功能对话框的UI(User Interface,用户界面)层的业务逻辑封装在一个预设的对话框监控类中,该对话框监控类用于监听确认举报控件、取消举报控件的点击事件,且该对话框监控类中预设有用于与控制层中控制器进行消息传递的消息通信协议,转入步骤S2。
可以理解的是,本发明实施例中将UI层的业务逻辑全部封装到一个预设的对话框监控类中,然后通过在该类内部中调用控件监听方法来监听确认举报控件和取消举报控件的点击回调事件,这样举报功能对话框的两个控件的点击消息就能从UI层传递到对话框监控类中了。该类能将举报功能的UI层业务逻辑的实现进行独立,也为后续的消息传递提供了实现基础。通过本步骤的实施能够有效的将举报功能的UI层的业务逻辑与Activity进行隔离。
具体来说,以操作系统为Android系统为例,在实际操作中,预设的对话框监控类可以通过继承Android系统提供的DialogFragment类(对话框碎片类)来进行实现。该DialogFragment类是Android系统提供的一个高级的对话框基类,基于该DialogFragment基类能够快速的实现对话框的业务逻辑。因此,可以通过继承DialogFragment类来实现对话框监控类,使得该对话框监控类能用于监听确认举报控件、取消举报控件的点击事件。更具体地,该对话框监控类能实现对确认举报控件、取消举报控件的点击事件的监听时,可通过调用确认举报控件/取消举报控件的视图对象中的点击监听方法setOnClickListener来进行监听,通过调用该方法后当用户点击确认举报控件/取消举报控件时,就会将对应控件的点击事件回调到预设的对话框监控类中了。
需要强调的是,上述的Android系统实例仅仅是一个例子而已,在其他的系统中(如IOS系统中),具体选用的方法(函数)等均可以根据其他系统的实际函数、代码、接口等情况进行具体的设计和调整,在此不做限制。
步骤S2、当所述对话框监控类监听到确认举报控件或取消举报控件的点击事件后,利用所述对话框监控类中预设的消息通信协议,将确认举报控件或取消举报控件的点击消息传递至用于处理举报上传相关业务逻辑的控制器中,转入步骤S3。
可以理解的是,由于本实施例中是利用对话框监控类来实现控件的点击消息向控制层的传递,因此,控制层中的控制器只需监听对话框监控类的传递消息即可,这样控制器内部就可以做到与UI层无关的业务逻辑处理了,从而使得控制层的业务逻辑能与UI层的业务逻辑解耦开。
另外,本实施例中,预设的消息通信协议主要是将举报功能对话框中确认举报控件或取消举报控件的点击消息传递至控制层中控制器的。因此,本实施例在具体操作时,是采用在预设的消息通信协议中设计两个与确认举报控件、取消举报控件对应的协议方法来实现与外层控制层通信的。
举例来说,还是以操作系统为Android系统为例,预设的消息通信协议可设计如下:
该消息通信协议的名称为IReportDialogCallback,表示用于将举报功能对话框中的消息返回出去的意思。在消息通信协议IReportDialogCallback中,设计了两个协议方法:onReportDialogOKClick()、onReportDialogCancelClick()。其中,onReportDialogOKClick()协议方法用于实现将确认举报控件的点击消息传递至控制层中的控制器中;onReportDialogCancelClick()协议方法用于实现将取消举报控件的点击消息传递至控制层中的控制器中。通过上述两个协议方法可实现对话框监控类与外层控制层的通信。
进一步地,由于实际应用中,随着应用场景或应用需求的变化,在控制层中会出现多个控制器需要获取控件的点击消息来实现多个功能需求的情况。例如,可能为了实现举报功能,控制层中用于处理举报上传相关业务逻辑的控制器需要获取控件的点击消息;又可能为了满足数据持久化需求,控制层中用于处理文件读写相关业务逻辑的控制器也需要获取控件的点击消息等等。因此,针对这种控制层中多个控制器需要获取控件的点击消息的情况,可采取多对象注册的方式进行处理,具体包括以下操作:
(1)在预设的对话框监控类中定义一个局部集合变量,如listListeners;该局部集合变量用于保存控制层中需要获取点击消息的所有控制器对象,且每个控制器对象的类型均为消息通信协议对象,如IReportDialogCallback对象。也就是说,每个控制器对象对应一个消息通信协议对象。
(2)在预设的对话框监控类中定义一个注册方法,如registerIReportDialogCallback;在该注册方法中通过调用局部集合变量添加方法add(),将需要获取点击消息的控制器对象加入到局部集合变量listListeners中。
(3)一旦对话框监控类监听到确认举报控件或取消举报控件的点击事件后,会遍历当前局部集合变量listListeners中的所有控制器对象,并通过调用每个控制器对象对应的消息通信协议对象,将确认举报控件或取消举报控件的点击消息传递至控制层中相应的控制器中。
由于我们将所有需要获取点击消息的控制器对象全部维系在局部集合变量listListeners中,所以能实现多个控制器对象同时监听到对话框监控类中的传递消息,从而满足了多控制器获取点击消息的使用需求,适用性更广、可拓展性强。
步骤S3、若所述控制器收到确认举报控件的点击消息,则进行举报上传相关业务逻辑的处理,并将处理结果的消息(包括举报上传成功的消息或举报上传失败的消息)反馈至Activity页面的UI层中,Activity页面将根据处理结果的消息更新当前界面上的视图元素;若所述控制器收到取消举报控件的点击消息,则关闭举报功能对话框并结束操作。
可以理解的是,Activity页面根据处理结果的消息更新当前界面上的视图元素时,具体更新的视图元素的内容可根据具体的使用需求由开发人员自行设置。例如,当收到举报上传成功的消息时,Activity页面可将当前界面的视图元素更新为提示举报上传成功的提示页面,并将确认举报控件和/或取消举报控件变灰,即使控件不可用;当收到举报上传失败的消息时,Activity页面可将当前界面的视图元素更新为提示举报上传失败的提示页面。
进一步的,由于控制层与Activity页面的UI层之间是没有任何耦合关系的,为了使得控制层能更顺利、准确地将处理结果的消息反馈至Activity页面的UI层中,本发明实施例中,控制层中的控制器是通过一个事件路由器将处理结果的消息反馈至Activity页面的UI层中的。具体来说,步骤S3中,控制器将处理结果的消息(包括举报上传成功的消息或举报上传失败的消息)反馈至Activity页面的UI层中,具体包括以下流程:
1、在控制器与Activity页面之间创建一个事件路由器,在该事件路由器的内部定义一个同步队列及一个消息判断循环逻辑体(类似于For循环体),该消息判断循环逻辑体用于判定同步队列中是否有消息,如果有消息就直接将该消息发送到Activity页面的UI层中,如果没有,就进入下一次循环判断逻辑中。
2、当控制器进行举报上传相关业务逻辑的处理后,将处理结果的消息传递到事件路由器中;该事件路由器会自动将收到的处理结果的消息通过push方法(同步队列所具有个一个用来添加数据的常规方法)压入到同步队列中;当下次消息判断循环逻辑体判定同步队列中具有该处理结果的消息时,该事件路由器从同步队列中取出该处理结果的消息并发送到Activity页面的UI层中。
利用上述方法实现视频交友过程中的举报功能时,能够有效的解耦举报功能与Activity页面之间的耦合关系,并且通过多级消息的流转最终能够及时的做到Activity页面的视图元素更新业务,在保证原始举报功能不变的前提下能够极大的提高程序的扩展性和可维护性。
对应上述的一种视频交友中实现举报功能的方法,本发明实施例还提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时可实现上述各实施例中的降低功能页面请求次数的方法的步骤。需要说明的是,所述存储介质包括U盘、移动硬盘、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
另外,参见图2所示,对应上述的一种视频交友中实现举报功能的方法,本发明实施例还提供一种视频交友中实现举报功能的设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行计算机程序时可实现上述各实施例中的视频交友中实现举报功能的方法的步骤。
参见图3所示,本发明实施例还提供一种视频交友中实现举报功能的系统,该系统包括事件监听模块、消息传递模块和页面视图更新模块。
其中,事件监听模块用于:当用户在实现举报功能的Activity页面中点击举报按钮时,弹出举报功能对话框;该举报功能对话框具有确认举报控件和取消举报控件,且该举报功能对话框的UI层的业务逻辑封装在预设的对话框监控类中,该对话框监控类用于监听确认举报控件、取消举报控件的点击事件,且该对话框监控类中预设有用于与控制层中控制器进行消息传递的消息通信协议;
消息传递模块用于:当对话框监控类监听到确认举报控件或取消举报控件的点击事件后,利用对话框监控类中预设的消息通信协议,将确认举报控件或取消举报控件的点击消息传递至用于处理举报上传相关业务逻辑的控制器中;当控制器收到取消举报控件的点击消息时,关闭举报功能对话框并结束操作;
页面视图更新模块用于:当控制器收到确认举报控件的点击消息时,利用控制器进行举报上传相关业务逻辑的处理,并利用控制器将处理结果的消息反馈至Activity页面的UI层中;控制Activity页面将根据处理结果的消息更新当前界面上的视图元素。。
进一步的,为了能满足实际应用中出现多个控制器需要获取控件的点击消息来实现多个功能需求的情况,本发明实施例中,所述消息传递模块采取多对象注册的方式进行处理。具体来说,所述消息传递模块进行消息传递操作的具体流程为:
在预设的对话框监控类中定义一个局部集合变量,该局部集合变量用于保存控制层中需要获取点击消息的所有控制器对象,且每个控制器对象的类型均为消息通信协议对象;
在预设的对话框监控类中定义一个注册方法,在该注册方法中通过调用局部集合变量添加方法将需要获取点击消息的控制器对象加入到局部集合变量中;
一旦对话框监控类监听到确认举报控件或取消举报控件的点击事件后,遍历当前局部集合变量中的所有控制器对象,并通过调用每个控制器对象对应的消息通信协议对象,将确认举报控件或取消举报控件的点击消息传递至控制层中相应的控制器中。
再进一步的,为了使得控制层能更顺利、准确地将处理结果的消息反馈至Activity页面的UI层,本发明实施例中,所述页面视图更新模块利用控制器将处理结果的消息反馈至Activity页面的UI层中的具体流程为:
在控制器与Activity页面之间创建一个事件路由器,在该事件路由器的内部定义一个同步队列及一个消息判断循环逻辑体,所述消息判断循环逻辑体用于判定同步队列中是否有消息,如果有消息就直接将该消息发送到Activity页面的UI层中,如果没有,就进入下一次循环判断逻辑中;
当控制器进行举报上传相关业务逻辑的处理后,利用控制器将处理结果的消息传递到事件路由器中;该事件路由器会自动将收到的处理结果的消息压入到同步队列中;当下次消息判断循环逻辑体判定同步队列中具有处理结果的消息时,该事件路由器从同步队列中取出该处理结果的消息并发送到Activity页面的UI层中。
需要说明的是:上述实施例提供的系统在实现视频交友过程中的举报功能时,仅以上述各程序模块的划分进行举例说明,实际应用中,可根据需要而将上述功能分配由不同程序模块完成,即将系统的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分功能。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (10)
1.一种视频交友中实现举报功能的方法,其特征在于,该方法包括以下步骤:
S1、当用户在实现举报功能的Activity页面中点击举报按钮时,弹出举报功能对话框;该举报功能对话框具有确认举报控件和取消举报控件,且该举报功能对话框的UI层的业务逻辑封装在预设的对话框监控类中,该对话框监控类用于监听确认举报控件、取消举报控件的点击事件,且该对话框监控类中预设有用于与控制层中控制器进行消息传递的消息通信协议;
S2、当所述对话框监控类监听到确认举报控件或取消举报控件的点击事件后,利用所述对话框监控类中预设的消息通信协议,将确认举报控件或取消举报控件的点击消息传递至用于处理举报上传相关业务逻辑的控制器中;
S3、若所述控制器收到确认举报控件的点击消息,则进行举报上传相关业务逻辑的处理,并将处理结果的消息反馈至Activity页面的UI层中;Activity页面将根据处理结果的消息更新当前界面上的视图元素。
2.如权利要求1所述的视频交友中实现举报功能的方法,其特征在于:若控制层中有多个控制器需要获取对话框监控类传递的点击消息时,步骤S2包括以下操作;
在预设的对话框监控类中定义一个局部集合变量,该局部集合变量用于保存控制层中需要获取点击消息的所有控制器对象,且每个控制器对象的类型均为消息通信协议对象;
在预设的对话框监控类中定义一个注册方法,在该注册方法中通过调用局部集合变量添加方法将需要获取点击消息的控制器对象加入到局部集合变量中;
一旦对话框监控类监听到确认举报控件或取消举报控件的点击事件后,会遍历当前局部集合变量中的所有控制器对象,并通过调用每个控制器对象对应的消息通信协议对象,将确认举报控件或取消举报控件的点击消息传递至控制层中相应的控制器中。
3.如权利要求1所述的视频交友中实现举报功能的方法,其特征在于:步骤S3中,控制器将处理结果的消息反馈至Activity页面的UI层中,具体包括以下操作:
在控制器与Activity页面之间创建一个事件路由器,在该事件路由器的内部定义一个同步队列及一个消息判断循环逻辑体,所述消息判断循环逻辑体用于判定同步队列中是否有消息,如果有消息就直接将该消息发送到Activity页面的UI层中,如果没有,就进入下一次循环判断逻辑中;
当控制器进行举报上传相关业务逻辑的处理后,将处理结果的消息传递到事件路由器中;该事件路由器会自动将收到的处理结果的消息压入到同步队列中;当下次消息判断循环逻辑体判定同步队列中具有处理结果的消息时,该事件路由器从同步队列中取出该处理结果的消息并发送到Activity页面的UI层中。
4.如权利要求1所述的视频交友中实现举报功能的方法,其特征在于,步骤S3还包括以下操作:若所述控制器收到取消举报控件的点击消息,则关闭举报功能对话框并结束操作。
5.一种存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现上述权利要求1至4中任一项所述方法的步骤。
6.一种视频交友中实现举报功能的设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现上述权利要求1至4中任一项所述方法的步骤。
7.一种视频交友中实现举报功能的系统,其特征在于:该系统包括事件监听模块、消息传递模块和页面视图更新模块;
所述事件监听模块用于:当用户在实现举报功能的Activity页面中点击举报按钮时,弹出举报功能对话框;该举报功能对话框具有确认举报控件和取消举报控件,且该举报功能对话框的UI层的业务逻辑封装在预设的对话框监控类中,该对话框监控类用于监听确认举报控件、取消举报控件的点击事件,且该对话框监控类中预设有用于与控制层中控制器进行消息传递的消息通信协议;
所述消息传递模块用于:当对话框监控类监听到确认举报控件或取消举报控件的点击事件后,利用对话框监控类中预设的消息通信协议,将确认举报控件或取消举报控件的点击消息传递至用于处理举报上传相关业务逻辑的控制器中;
所述页面视图更新模块用于:当控制器收到确认举报控件的点击消息时,利用控制器进行举报上传相关业务逻辑的处理,并利用控制器将处理结果的消息反馈至Activity页面的UI层中;控制Activity页面将根据处理结果的消息更新当前界面上的视图元素。
8.如权利要求7所述的视频交友中实现举报功能的系统,其特征在于:若控制层中有多个控制器需要获取对话框监控类传递的点击消息时,所述消息传递模块进行消息传递操作的具体流程为:
在预设的对话框监控类中定义一个局部集合变量,该局部集合变量用于保存控制层中需要获取点击消息的所有控制器对象,且每个控制器对象的类型均为消息通信协议对象;
在预设的对话框监控类中定义一个注册方法,在该注册方法中通过调用局部集合变量添加方法将需要获取点击消息的控制器对象加入到局部集合变量中;
一旦对话框监控类监听到确认举报控件或取消举报控件的点击事件后,遍历当前局部集合变量中的所有控制器对象,并通过调用每个控制器对象对应的消息通信协议对象,将确认举报控件或取消举报控件的点击消息传递至控制层中相应的控制器中。
9.如权利要求7所述的视频交友中实现举报功能的系统,其特征在于:所述页面视图更新模块利用控制器将处理结果的消息反馈至Activity页面的UI层中的具体流程为:
在控制器与Activity页面之间创建一个事件路由器,在该事件路由器的内部定义一个同步队列及一个消息判断循环逻辑体,所述消息判断循环逻辑体用于判定同步队列中是否有消息,如果有消息就直接将该消息发送到Activity页面的UI层中,如果没有,就进入下一次循环判断逻辑中;
当控制器进行举报上传相关业务逻辑的处理后,利用控制器将处理结果的消息传递到事件路由器中;该事件路由器会自动将收到的处理结果的消息压入到同步队列中;当下次消息判断循环逻辑体判定同步队列中具有处理结果的消息时,该事件路由器从同步队列中取出该处理结果的消息并发送到Activity页面的UI层中。
10.如权利要求7所述的视频交友中实现举报功能的系统,其特征在于,所述页面视图更新模块还用于:当控制器收到取消举报控件的点击消息时,关闭举报功能对话框并结束操作。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710770993.4A CN107577540B (zh) | 2017-08-31 | 2017-08-31 | 视频交友中实现举报功能的方法、存储介质、设备及系统 |
PCT/CN2017/117387 WO2019041669A1 (zh) | 2017-08-31 | 2017-12-20 | 视频交友中实现举报功能的方法、存储介质、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710770993.4A CN107577540B (zh) | 2017-08-31 | 2017-08-31 | 视频交友中实现举报功能的方法、存储介质、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107577540A CN107577540A (zh) | 2018-01-12 |
CN107577540B true CN107577540B (zh) | 2020-03-17 |
Family
ID=61030452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710770993.4A Active CN107577540B (zh) | 2017-08-31 | 2017-08-31 | 视频交友中实现举报功能的方法、存储介质、设备及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107577540B (zh) |
WO (1) | WO2019041669A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111142982A (zh) * | 2018-11-02 | 2020-05-12 | 鸿合科技股份有限公司 | 一种事件执行方法及装置、电子设备 |
CN110502229B (zh) * | 2019-08-26 | 2023-08-25 | 广州小鹏汽车科技有限公司 | 页面的生成方法、装置、终端、计算机设备和存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1512299A (zh) * | 2002-12-27 | 2004-07-14 | 联想(北京)有限公司 | 虚拟信息流总线接口及其数据处理方法 |
CN101000544A (zh) * | 2007-01-16 | 2007-07-18 | 华为技术有限公司 | 基于Web页面的事件分发方法与装置 |
CN101169716A (zh) * | 2007-11-30 | 2008-04-30 | 清华大学 | 一种基于产品结构树的仿真流程信息建模及维护方法 |
CN102043616A (zh) * | 2009-10-22 | 2011-05-04 | 上海杉达学院 | 一种基于工厂模式的信息系统架构以及架构方法 |
CN102520985A (zh) * | 2011-11-29 | 2012-06-27 | 深圳市万兴软件有限公司 | 一种客户端软件运行的系统和方法 |
CN103645901A (zh) * | 2013-12-16 | 2014-03-19 | 上海证券交易所 | 一种基于事件链的用户界面插件化交互方法 |
CN104123157A (zh) * | 2014-07-17 | 2014-10-29 | 北京京东尚科信息技术有限公司 | 一种移动终端的跨平台业务逻辑定制方法和装置 |
CN105573914A (zh) * | 2015-12-15 | 2016-05-11 | 国云科技股份有限公司 | 一种Android应用的项目分层方法 |
CN105933781A (zh) * | 2016-04-19 | 2016-09-07 | 武汉斗鱼网络科技有限公司 | 一种用于视频网站的违规弹幕处理方法及装置 |
CN107092484A (zh) * | 2017-03-27 | 2017-08-25 | 武汉斗鱼网络科技有限公司 | 将C语言层的功能按键信息上报至Java层的方法及系统 |
CN107133041A (zh) * | 2017-05-02 | 2017-09-05 | 武汉斗鱼网络科技有限公司 | 数据通知方法及装置 |
CN103902388B (zh) * | 2012-12-28 | 2017-10-03 | 北京壹人壹本信息科技有限公司 | 应用之间进行通信的方法和电子设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11599907B2 (en) * | 2012-05-14 | 2023-03-07 | Iqzone, Inc. | Displaying media content on portable devices based upon user interface state transitions |
CN106484509B (zh) * | 2016-09-27 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 一种弹窗的输出方法、装置及终端 |
CN107092481A (zh) * | 2017-03-23 | 2017-08-25 | 武汉斗鱼网络科技有限公司 | 一种用于网络交互的会话提示框实现方法及系统 |
-
2017
- 2017-08-31 CN CN201710770993.4A patent/CN107577540B/zh active Active
- 2017-12-20 WO PCT/CN2017/117387 patent/WO2019041669A1/zh active Application Filing
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1512299A (zh) * | 2002-12-27 | 2004-07-14 | 联想(北京)有限公司 | 虚拟信息流总线接口及其数据处理方法 |
CN101000544A (zh) * | 2007-01-16 | 2007-07-18 | 华为技术有限公司 | 基于Web页面的事件分发方法与装置 |
CN101169716A (zh) * | 2007-11-30 | 2008-04-30 | 清华大学 | 一种基于产品结构树的仿真流程信息建模及维护方法 |
CN102043616A (zh) * | 2009-10-22 | 2011-05-04 | 上海杉达学院 | 一种基于工厂模式的信息系统架构以及架构方法 |
CN102520985A (zh) * | 2011-11-29 | 2012-06-27 | 深圳市万兴软件有限公司 | 一种客户端软件运行的系统和方法 |
CN103902388B (zh) * | 2012-12-28 | 2017-10-03 | 北京壹人壹本信息科技有限公司 | 应用之间进行通信的方法和电子设备 |
CN103645901A (zh) * | 2013-12-16 | 2014-03-19 | 上海证券交易所 | 一种基于事件链的用户界面插件化交互方法 |
CN104123157A (zh) * | 2014-07-17 | 2014-10-29 | 北京京东尚科信息技术有限公司 | 一种移动终端的跨平台业务逻辑定制方法和装置 |
CN105573914A (zh) * | 2015-12-15 | 2016-05-11 | 国云科技股份有限公司 | 一种Android应用的项目分层方法 |
CN105933781A (zh) * | 2016-04-19 | 2016-09-07 | 武汉斗鱼网络科技有限公司 | 一种用于视频网站的违规弹幕处理方法及装置 |
CN107092484A (zh) * | 2017-03-27 | 2017-08-25 | 武汉斗鱼网络科技有限公司 | 将C语言层的功能按键信息上报至Java层的方法及系统 |
CN107133041A (zh) * | 2017-05-02 | 2017-09-05 | 武汉斗鱼网络科技有限公司 | 数据通知方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107577540A (zh) | 2018-01-12 |
WO2019041669A1 (zh) | 2019-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110113381B (zh) | 一种区块链中订阅主题的方法及装置 | |
US9763090B2 (en) | Techniques for determining and communicating presence | |
CN105407086B (zh) | 一种临时授权方法、客户端、服务器 | |
CN105306662A (zh) | 通信终端的信息整合方法及系统 | |
US20070161393A1 (en) | Method and a system for talk burst control and an moderator terminal therefor | |
CN109271261B (zh) | 一种事件统一处理方法、设备和存储介质 | |
CN110830823B (zh) | 播放进度修正方法、装置、电子设备及可读存储介质 | |
CN107577540B (zh) | 视频交友中实现举报功能的方法、存储介质、设备及系统 | |
CN108650667A (zh) | 终端调度方法和装置 | |
WO2015143934A1 (en) | Information sending method and information sending apparatus | |
CN103380634A (zh) | 用于发送数据的方法和装置 | |
CN109165114B (zh) | 应用程序无响应的处理方法、装置、存储介质及智能终端 | |
CN111694644A (zh) | 基于机器人操作系统的消息处理方法、装置及计算机设备 | |
CN103491162A (zh) | 基于移动互联网的信息分享方法及系统 | |
CN109426535B (zh) | 一种跳转到页面指定位置的方法、存储介质、设备及系统 | |
US20080002700A1 (en) | Method and apparatus of automatically providing registration information | |
US20160183082A1 (en) | Information processing device, server device, data communication system, data communication method, and computer-readable storage medium storing data communication program | |
CN115878341A (zh) | 消息的订阅方法和装置、存储介质及电子装置 | |
CN111008209B (zh) | 数据的对账方法、装置及系统、存储介质、电子装置 | |
CN112929257A (zh) | 多场景消息发送方法、装置、服务器以及存储介质 | |
CN108021643A (zh) | 信息推送方法、装置、服务器及存储介质 | |
CN106954191A (zh) | 广播发送方法、装置和终端设备 | |
CN114338584B (zh) | 消息撤回方法和消息传输系统 | |
JP4638468B2 (ja) | 自動通報処理システム及びセンタ用装置 | |
JP5502051B2 (ja) | ソフトウェア・アプリケーション制御管理オブジェクトにおけるステップの実行結果を処理する方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |