CN110609964A - IPTV browser page implementation method and IPTV browser - Google Patents

IPTV browser page implementation method and IPTV browser Download PDF

Info

Publication number
CN110609964A
CN110609964A CN201910717971.0A CN201910717971A CN110609964A CN 110609964 A CN110609964 A CN 110609964A CN 201910717971 A CN201910717971 A CN 201910717971A CN 110609964 A CN110609964 A CN 110609964A
Authority
CN
China
Prior art keywords
class
playing
page
iptv
authentication
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.)
Granted
Application number
CN201910717971.0A
Other languages
Chinese (zh)
Other versions
CN110609964B (en
Inventor
胡丽娟
姜超
陈世庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Fiberhome Telecommunication Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201910717971.0A priority Critical patent/CN110609964B/en
Publication of CN110609964A publication Critical patent/CN110609964A/en
Application granted granted Critical
Publication of CN110609964B publication Critical patent/CN110609964B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses an IPTV browser page implementation method and an IPTV browser, and relates to the technical field of browsers. The IPTV browser page implementation method comprises the following steps: the IPTV browser responds to the starting instruction, calls a webpage loading method of a chrome kernel through a self-defined ShellManager subclass to load an authentication page, and loads an IPTV page after authentication is successful; and processing a remote controller key event and realizing an authentication object of the IPTV service platform through the ShellManager subclass in the loaded page, and controlling media playing through a self-defined playing interface. The invention does not depend on API provided by a frame layer, and directly realizes the customized function of the IPTV browser based on a Chromium kernel.

Description

IPTV browser page implementation method and IPTV browser
Technical Field
The present invention relates to an IPTV (Internet Protocol Television) terminal, and in particular, to a method for implementing an IPTV browser page and an IPTV browser.
Background
With the development of networks, intelligent terminal devices equipped with Android systems are increasing at the speed of a well-jet type. The IPTV browser is a bridge for establishing an intelligent terminal and an IPTV service platform, and the intelligent terminal can access the IPTV service platform anytime and anywhere and enjoy video services and services provided by the platform.
The conventional IPTV browser is implemented based on an API (Application Programming Interface) related to a webkit (open source browser engine) provided in a framework layer by an Android system, and performs customized modification (including addition of APIs of the framework layer and the like) according to a specification provided by an operator to implement a customized function of an IPTV service platform.
However, Android system updates bring about two problems: starting with android5.0, the system does not already have a browser kernel; and Android version changes cause the framework layer interface to change. Then, the conventional implementation manner of IPTV cannot implement all the functions of IPTV, because the customized modification of IPTV may involve modification of API of the frame layer, and the modification of API needs to be correlated with the browser kernel, and since the system architecture started by android5.0 does not include the browser kernel source code, the modification of the functions customized for IPTV in the browser kernel cannot be implemented.
Disclosure of Invention
Aiming at the defects in the prior art, the invention aims to provide an IPTV browser page implementation method and an IPTV browser, which do not depend on an API provided by a frame layer and directly implement the customized function of the IPTV browser based on a kernel.
The invention provides a method for realizing an IPTV browser page, which comprises the following steps:
the IPTV browser responds to the starting instruction, calls a webpage loading method of a chrome kernel through a self-defined ShellManager subclass to load an authentication page, and loads an IPTV page after authentication is successful; and the number of the first and second groups,
and in the loaded page, processing a remote controller key event through the ShellManager subclass, realizing an authentication object of the IPTV service platform, and controlling media playing through a self-defined playing interface.
On the basis of the technical scheme, the ShellManager subclass calls an addJavascript interface method to map the authentication object to a self-defined authentication class, calls a getWebContents method of the Shell class to acquire the WebContents class, and associates the WebContents class and the self-defined authentication class through the Javascript Injector class.
On the basis of the above technical solution, the playing interface includes a customized JNI class and a media playing class, and a media playing object and a playing control method created using an interface definition language IDL, where the media playing object includes at least one of a method for acquiring a local player sequence number and the following playing control method: setting the position of a video window, starting playing from the beginning and joining in multicast;
in a first process, a media playing object corresponding to a local player is newly built according to the media playing object, and the newly built media playing object adds a self-defined playing control communication method in a LocalFrameClient subclass and a RenderFrameImpl class through a LocalFrame class and is used for transmitting a playing control instruction between playing control communication methods corresponding to the RenderFrameHostImpl class through inter-process communication IPC (inter process communication);
in the second process, the renderframehostimipl class controls the playing of the local player through the play control method of the JNI class and the corresponding play control method in the media play class.
On the basis of the technical scheme, the IPTV browser responds to a remote controller key event, calls a dispatch keyevent method of a View type through an Android system to send an obtained key value, receives the key value and calls a key value conversion method and a blink process, and executes JS processing logic corresponding to the key value in a page; and the dispatchKeyEvent method in the ShellManager subclass receives the key value of the key and processes the specified key value.
On the basis of the technical scheme, the IPTV browser acquires and stores playing information from the local player through a self-defined Event class based on the playing information of the local player, and calls a displatckeyEvent method in the ShellManager subclass to send a designated key value;
ContentViewCore obtains the specified key value, and call the JS processing logic corresponding to the specified key value in the blink process execution page, the JS processing logic calls the getEvent method of the JS extension object Utility to obtain the stored playing information and execute the corresponding operation, wherein the JS extension object Utility is realized through the ShellManager subclass.
On the basis of the technical scheme, according to a self-defined focus navigation object arranged in a DOMWindex class, a focus navigation object is newly built in a page, a LocalFrame class name is transmitted, and a render process is called through the LocalFrame class to realize focus frame display and/or default navigation enabling;
wherein, the focus navigation object is a JS extension object of an IPTV service platform realized by using an interface definition language IDL.
The present invention also provides an IPTV browser, which includes:
the page loading module is used for responding to the starting instruction, calling a webpage loading method of a chrome kernel through a self-defined ShellManager subclass to load an authentication page, and loading an IPTV page after the authentication is successful;
the authentication module is used for realizing an authentication object of the IPTV service platform through the ShellManager subclass in an authentication page and carrying out authentication operation;
the remote control key module is used for processing a remote controller key event in the loaded page through the ShellManager subclass;
and the media playing module is used for controlling media playing through a self-defined playing interface in the loaded page.
On the basis of the technical scheme, the ShellManager subclass calls an addJavascript interface method to map the authentication object to a self-defined authentication class, calls a getWebContents method of the Shell class to acquire the WebContents class, and associates the WebContents class and the self-defined authentication class through the Javascript Injector class.
On the basis of the above technical solution, the playing interface includes a customized JNI class and a media playing class, and a media playing object and a playing control method created using an interface definition language IDL, where the media playing object includes at least one of a method for acquiring a local player sequence number and the following playing control method: setting the position of a video window, starting playing from the beginning and joining in multicast;
the media playing module is used for creating a media playing object corresponding to the local player according to the media playing object in a first process, adding a self-defined playing control communication method to the created media playing object in a LocalFrameClient subclass and a RenderFrameImpl class through a LocalFrame class, and transmitting a playing control instruction between playing control communication methods corresponding to the RenderFrameHostImpl class through IPC (inter-process control) and the RenderFrameHostImpl class; and in the second process, the renderframehostjmpl class controls the playing of the native player through the play control method of the JNI class and the corresponding play control method in the media play class.
On the basis of the technical scheme, the remote control key module is used for responding to a remote controller key event, calling a DispatcKeyEvent method of a View class through an Android system to send an obtained key value, receiving the key value by a ContentViewCor, calling a key value conversion method and a blink process, and executing JS processing logic corresponding to the key value in a page; and the dispatchKeyEvent method in the ShellManager subclass receives the key value of the key and processes the specified key value.
The IPTV browser also comprises a focus navigation module and a media information module;
the focus navigation module is used for building a focus navigation object in a page newly according to a self-defined focus navigation object arranged in the DOMWindex class, transmitting a LocalFrame class name into the page, and calling a render process through the LocalFrame class to realize focus frame display and/or default navigation enabling; the focus navigation object is a JS extension object of an IPTV service platform realized by using an interface definition language IDL;
the media information module is used for acquiring and storing the playing information from the local player through a self-defined Event class based on the playing information of the local player, and calling a dispatchKeyEvent method of the ShellManager subclass to send a specified key value; ContentViewCore obtains the specified key value, and call the JS processing logic corresponding to the specified key value in the blink process execution page, the JS processing logic calls the getEvent method of the JS extension object Utility to obtain the stored playing information and execute the corresponding operation, wherein the JS extension object Utility is realized through the ShellManager subclass.
Compared with the prior art, the embodiment of the invention provides a method for realizing an IPTV browser page, which comprises the following steps: the IPTV browser responds to the starting instruction, calls a webpage loading method of a chrome kernel through a self-defined ShellManager subclass to load an authentication page, and loads an IPTV page after authentication is successful; and in the loaded page, processing a remote controller key event and realizing an authentication object of the IPTV service platform through the ShellManager subclass, controlling media playing through a self-defined playing interface, and directly realizing the customized function of the IPTV browser based on a chroma kernel without depending on an API provided by a frame layer.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic diagram of an IPTV browser according to an embodiment of the present invention;
FIG. 2 is a diagram illustrating the process by which the authentication page is loaded by the page load module;
FIG. 3 illustrates an authentication process performed by the authentication module;
FIG. 4 is a diagram illustrating a process of a remote control key module responding to a remote control key event;
fig. 5 is a process of the media playing module controlling local playing through the playing interface;
fig. 6 is a schematic diagram of an IPTV browser according to another embodiment of the present invention;
FIG. 7 is a flowchart illustrating a process of the focus navigation module;
FIG. 8 is a diagram illustrating a process of a media information module;
fig. 9 is a flowchart of a method for implementing an IPTV browser page according to an embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples.
Fig. 1 is a schematic diagram of an architecture of an IPTV browser according to an embodiment of the present invention, where the IPTV browser includes a page loading module, an authentication module, a remote control key module, and a media playing module.
The page loading module is used for responding to the starting instruction, calling a webpage loading method of the chrome kernel through a self-defined ShellManager subclass to load an authentication page, and loading the IPTV page after the authentication is successful.
The authentication module is used for realizing an authentication object of the IPTV service platform through the ShellManager subclass in the authentication page and carrying out authentication operation.
And the remote control key module is used for processing a remote controller key event in the loaded page through the ShellManager subclass.
The media playing module is used for controlling media playing through a self-defined playing interface in the loaded page.
The page loading module and the authentication module are basic modules of the IPTV browser, and mainly function to respond to a start instruction, and upload information such as an account number, a password, a Set Top Box ID (Set Top Box ID), a mac (Media Access Control) address, and the like of the IPTV terminal to the IPTV service platform through an http request. After the verification of the IPTV service platform is passed, the address of the IPTV home page is issued to the IPTV terminal, and the IPTV terminal skips to the IPTV home page according to the guidance (location. After the subsequent user selects the link to be jumped through the remote controller, the IPTV terminal also sends an http request to the IPTV service platform through the page loading module, so as to realize the switching of the page.
In order to realize the http request function, the page loading module is to create a display window of a web page in the IPTV browser and load the page. The self-defined Shell manager subclass calls a launchShell method to create and display a webpage window, and binds the Shell class and calls a page loading method in the Shell class when the webpage window is created.
Fig. 2 shows a process of loading an authentication page by a page loading module, first, a pre-created shellmager subclass inherits a shellmager class of a Chromium core, the shellmager subclass calls a launchShell method of the shellmager class to realize display of a web page window, and the shellmager subclass is bound with the Shell class of the Chromium core in the process of executing the launchShell method. When an authentication address is requested, the authentication address can be acquired by the getActiveShell method of the Shell manager class, and the loadUrl (Page load) method of the Shell class is called to load the authentication address. The jump of the subsequent page can be realized by calling the original function of the chrome kernel by the ShellManager subclass.
The main functions of the Authentication module are to implement JS extension object Authentication (Authentication object defined in IPTV specification) required by IPTV service platform and two methods of this object: the IPTV service platform issues information such as a channel list and the like by an Authentication type SetConfig method, and acquires information of the IPTV terminal by the GetConfig method.
In the Authentication module, an addJavascript interface method is called by a customized ShellManager subclass to map an Authentication object (Authentication, JS extension object) to a customized Authentication class (JsAuthentication, which is a JAVA class), a getWebContents method of the Shell class is called to obtain a WebContents class, and the WebContents class and the customized Authentication class are associated by the Javascript Injector class.
FIG. 3 shows an Authentication process performed by an Authentication module, where a custom ShellManager subclass calls an addJavascript interface method to map Authentication to JsAuthentization; the self-defined Shell manager subclass calls the getWebContents method of the Shell class through the Shell manager class in FIG. 2 to obtain the WebContents class, then converts the WebContents into the Javascript Injector class through the frommWebContents method of the Javascript Injector class, and binds the self-defined JAVA class (JsAuthentification) and the converted Javascript Injector class through the addPossignatureInterfacefunction method of the Javascript Injector class, thereby completing the association of the WebContents and the Autoention. Thus, the IPTV service platform calls the evaluateJavaScript method of WebContents directly through the JS processing logic of the IPTV browser via the ShellManager subclass, thereby realizing the call of the SetConfig and GetConfig methods of Authentication.
The class of the Chromium core and the method thereof comprise:
shell class: getWebContents method;
WebContents class: evaluateJavaScript method;
javascript object class: the frommWebContents method and the addPossiblyUnsementer method.
The chrome core itself does not support remote control keys, but does support keyboard and mouse keys. Therefore, the key technology for realizing remote control key processing and the like is to convert the remote control keys into key values recognized by the IPTV platform and realize JS processing logic required to be executed by the corresponding key values.
The method comprises the steps that since the Shell manager class inherits the base class of the Shell manager of an Android system is a graph display View class of the Android system, a remote control key module responds to a remote controller key event, the Android system calls a DispatcKeyEvent method of the View class to send an obtained key value, a ContentViewCor receives the key value and calls a key value conversion method and a blink process, and JS processing logic corresponding to the key value in a page is executed; the method for dispatchKeyEvent in the ShellManager subclass receives key values of the keys and processes the specified key values, and JS processing logic corresponding to the keys in the page is achieved. The JS processing logic is a JS script provided by the IPTV service platform.
Fig. 4 shows a process of the remote control key module responding to a remote control key event, when a user presses a key, the user may call a dispatckeyevent (distribution key message) method in View, reference is made to a KeyEvent (key value) in the Android system, at this time, both the dispatckeyevent methods in ContentViewCore and the shellmager subclass are called, and after the ContentViewCore receives the key, the ContentViewCore may first convert the key value in the Android system into a key value recognized by the IPTV service platform through the conversion of the keyscorodefromandoidkeycode (key value conversion) method, and then call a blink process to implement a JS processing logic corresponding to the key in the page. The dispatchKeyEvent method in the ShellManager subclass can perform special processing on some special keys, and the requirement of customizing the keys is met.
Wherein, the class and the process of the chromosome kernel include:
ContentViewCore: displaying the JAVA class of the webpage content, and inheriting from the View class;
blink Process: a browser rendering engine.
The media playing module is mainly used for realizing a channel for calling a local playing function by the IPTV service platform. The key technology mainly comprises two technologies: implementing the JS handling logic calls a Mediaplayer (name of JS extension object defined in IPTV specification) object; and calling local JAVA class JMediaplayer (the self-defined name of the JAVA class corresponding to the Mediaplayer in the kernel) by the Chromium kernel, and finally realizing the control function of local playing.
The media playing module is used for controlling media playing through a self-defined playing interface in the loaded page. The playing interface comprises a customized JNI class and a media playing class, and a media playing object and a playing control method which are created by using an interface definition language IDL (InterfaceDescription language), wherein the media playing object comprises a method for acquiring a sequence number of a local player and at least one of the following playing control methods: setting the video window position, playing from the beginning and joining the multicast.
In the first Process, a media playing object corresponding to the local player is created according to the media playing object, and the created media playing object adds a self-defined playing and controlling Communication method in a LocalFrameClient subclass and a RenderFrameImpl class through a LocalFrame class, and is used for transmitting a playing and controlling instruction between playing and controlling Communication methods corresponding to the RenderFrameHostImpl class through Inter-Process Communication (IPC).
In the second process, the renderframehostimipl class controls the playing of the native player through the play control method of the JNI class and the corresponding play control method in the media play class.
Fig. 5 shows a process of controlling local play by the media play module through the play interface, where the play interface mainly includes:
1) the MediaPlayer objects and the corresponding play control modes are added through IDL: getnative player instance id (get local player number), setVideoDisplayArea (set video window position), playFromStart (play from head), and joinChannel (join multicast), etc.
2) Native fmediameplayergetvalue method of self-built JNI class fhplayeye (JAVA class created in the chrome kernel corresponding to MediaPlayer object), fhMediaPlayerGetValue method of sub-class JSMediaplayer of fhplayeye, and onfhmemediaplayecontrol (function for communication) customized in RenderFrameHostImpl.
In fig. 5, first, when a page newly creates a MediaPlayer object by JS, since IPTV has a function of viewing a plurality of videos at the same time, the newly created MediaPlayer object is associated with a local player by a play id (player identification number); the MediaPlayer object adds MediaPlayerGetValue (a self-defined function name for communication) method in LocalFrameClient subclass and RenderFrameImpl class through LocalFrame class; then, the broadcast control instruction is sent to OnFhMediaPlayerControl (a self-defined function name for communication) in RenderFrameHostImpl through IPC communication, so as to realize communication of different processes; finally, a native fmediameplayerGetValue method of the self-built JNI type Fhpayer is called by the RenderFrameHostImpl, and a fhMediaplayerGetValue method of the JNI type Fhpayer is called to the JMediaPlayer subclass of the Fhpayer, so that the calling of a native player (native Player) is realized.
The class of the Chromium core and the method thereof comprise:
LocalFrameClient: the subclass of LocalFrame is mainly used for processing interprocess message communication;
RenderFrameImpl: class of user inter-process communication.
The embodiment of the invention shields the calling of the webkit interface in the frame layer of the Android system, and effectively reduces the condition that IPTV application cannot be normally used due to the upgrading of the Android system. The IPTV application (browser) only runs on the Android system, and the IPTV application can be run by any terminal installed with the Android system.
Referring to fig. 6, in an alternative embodiment, the IPTV browser further includes a focus navigation module and a media information module.
The focus navigation module is mainly used for controlling whether the IPTV service platform displays a focus frame or performs a default navigation function on the IPTV terminal. The key technology is to realize methods of disableDefaultNavigation (default focus Navigation is prohibited), enabledDefaultNavigation (default focus Navigation is enabled), disableHighliight (default focus frame is prohibited from being displayed), and enableHighliight (default focus frame is displayed) of a page calling an extension object Navigation (name of JS extension object defined in IPTV specification) through JS.
The focus navigation module is used for building a focus navigation object in a page newly according to a self-defined focus navigation object arranged in the DOMWindex class, transmitting a LocalFrame class name into the page, and calling a render process through the LocalFrame class to realize focus frame display and/or default navigation enabling; wherein, the focus navigation object is a JS extension object of an IPTV service platform realized by using an interface definition language IDL.
Fig. 7 shows a processing procedure of the focus Navigation module, which is to add a Navigation object (Navigation) in the domBindow class, and then add four methods to the Navigation object, where the four methods call a setSpatialNavigationEnabled method and a setFocusWidth method of the LocalFrame class according to the LocalFrame class transmitted when the Navigation object is created, and finally, the chrome kernel determines whether Navigation is needed or whether a focus frame needs to be drawn at a place where Navigation is needed or the focus frame needs to be drawn.
The class of the Chromium core and the method thereof comprise:
DOMWindow: in the JS grammar, the name of a C + + class in a chrome kernel corresponding to a global variable window;
LocalFrame: the class name corresponding to the html page in the chrome kernel includes setting whether the default navigation setspatialnavigationeenabled method is enabled and setting the default focus frame width setFocusWidth.
The media information processing module is mainly used for actively transmitting the locally played information (the state that the video is played to the head or the tail, and the like) to the IPTV platform. The key technology of the module is as follows: how to inform the IPTV platform of the local playing information through JAVA class; how the IPTV platform acquires the play information through a JS extended object Utility (JS extended object defined in the IPTV specification) object, the implementation manner of the JS extended object Utility is the same as that of the Authentication object, and details are not repeated.
The media information module is used for acquiring and storing the playing information from the local player through a self-defined Event class based on the playing information of the local player, and calling a dispatckeyEvent method of the ShellManager class to send a specified key value; the ContentViewCore acquires JS processing logic corresponding to the designated key value in the designated key value execution page, and the JS processing logic calls a blink process and a getEvent (media message acquisition) method of a JS extension object Utility to acquire stored playing information and execute corresponding operation, wherein the JS extension object Utility is realized through a ShellManager subclass.
Fig. 8 shows a processing procedure of the media information module, when the local player has play information to send to the IPTV service platform, the local player may call an addMediaEvent method of a custom message type Event to store the play information, then call a dispatcheyevent method of a shellmager subclass to send a specific key value (e.g., 768), at this time, the key value may be sent to a kernel via processing (blink process) of the remote control button module, then call JS processing logic of the key value of 768 in the page, the JS processing logic may obtain the play information previously stored by the addMediaEvent by calling a getEvent method of utiity, and then execute different commands according to different play information in the JS processing logic.
Referring to fig. 9, an embodiment of the present invention provides a method for implementing an IPTV browser page, where based on the IPTV browser of the foregoing embodiment, the method for implementing the IPTV browser page includes:
s110, the IPTV browser responds to the starting instruction and calls a webpage loading method of a chrome kernel to load an authentication page through a self-defined ShellManager subclass.
S120, in the authentication page, the remote controller key event is processed through the ShellManager subclass, and the authentication object of the IPTV service platform is realized.
S130, after the authentication is successful, loading an IPTV page, processing a remote controller key event through a ShellManager subclass, and controlling media playing through a self-defined playing interface.
Specifically, on the basis of a standard browser kernel (chrome), the IPTV browser implements IPTV functions through six modules in the foregoing embodiment by the following steps:
1) loading an authentication page through a page loading module; the authentication module realizes interaction with an IPTV service platform in the process of loading the authentication page, so that the IPTV home page is entered;
2) after entering an IPTV home page, a user can operate the remote controller, and the remote control key module completes the analysis and processing of a remote controller key event;
when the analyzed direction key is obtained, the focus navigation is realized in two ways, one way is that the IPTV service platform is directly completed through js statement, the other way is that an IPTV browser is required to execute a default navigation processing flow, and at the moment, the IPTV browser can determine whether to execute the default focus navigation through a focus navigation module.
When the user operates the media playing through the remote controller, the IPTV browser can realize the corresponding media playing control function through the media playing module.
3) When the playing is ended in the playing process or a user selects a video source which cannot be played, the IPTV browser notifies the IPTV service platform of the playing message through the media message module, so that the IPTV service platform can process the situations.
The purpose of directly calling the interface of the chrome kernel is achieved by the six modules through the interface of the webkit crossing the framework layer of the Android system, and the IPTV browser frame of the embodiment of the invention is achieved.
The present invention is not limited to the above-described embodiments, and it will be apparent to those skilled in the art that various modifications and improvements can be made without departing from the principle of the present invention, and such modifications and improvements are also considered to be within the scope of the present invention. Those not described in detail in this specification are within the skill of the art.

Claims (10)

1. A method for realizing IPTV browser page is characterized in that:
the IPTV browser responds to the starting instruction, calls a webpage loading method of a chrome kernel through a self-defined ShellManager subclass to load an authentication page, and loads an IPTV page after authentication is successful; and the number of the first and second groups,
and in the loaded page, processing a remote controller key event through the ShellManager subclass, realizing an authentication object of the IPTV service platform, and controlling media playing through a self-defined playing interface.
2. The IPTV browser page implementing method of claim 1, wherein:
the ShellManager subclass calls an addJavascript interface method to map the authentication object to a self-defined authentication class, calls a getWebContents method of the Shell class to obtain a WebContents class, and associates the WebContents class and the self-defined authentication class through the Javascript Injector class.
3. The IPTV browser page implementing method of claim 1, wherein:
the playing interface comprises a self-defined JNI class, a media playing object and a playing control method, wherein the media playing object is created by using an interface definition language IDL, and the media playing object comprises a method for acquiring a local player sequence number and at least one of the following playing control methods: setting the position of a video window, starting playing from the beginning and joining in multicast;
in a first process, a media playing object corresponding to a local player is newly built according to the media playing object, and the newly built media playing object adds a self-defined playing control communication method in a LocalFrameClient subclass and a RenderFrameImpl class through a LocalFrame class and is used for transmitting a playing control instruction between playing control communication methods corresponding to the RenderFrameHostImpl class through inter-process communication IPC (inter process communication);
in the second process, the renderframehostimipl class controls the playing of the local player through the play control method of the JNI class and the corresponding play control method in the media play class.
4. The IPTV browser page implementing method of claim 1, wherein:
the IPTV browser responds to a remote controller key event, calls a View type dispatcKeyEvent method to send an acquired key value through an Android system, receives the key value by a ContentViewCor, calls a key value conversion method and a blink process, and executes JS processing logic corresponding to the key value in a page; and the dispatchKeyEvent method in the ShellManager subclass receives the key value of the key and processes the specified key value.
5. The IPTV browser page implementing method of claim 4, wherein the method further comprises:
the IPTV browser acquires and stores playing information from the local player through a self-defined Event class based on the playing information of the local player, and calls a dispatchKeyEvent method in the ShellManager subclass to send a designated key value;
ContentViewCore obtains the specified key value, and call the JS processing logic corresponding to the specified key value in the blink process execution page, the JS processing logic calls the getEvent method of the JS extension object Utility to obtain the stored playing information and execute the corresponding operation, wherein the JS extension object Utility is realized through the ShellManager subclass.
6. The IPTV browser page implementing method of claim 1, wherein the method further comprises:
according to a self-defined focus navigation object arranged in a DOMWindex class, a focus navigation object is newly built in a page, a LocalFrame class name is transmitted, and a render process is called through the LocalFrame class to realize focus frame display and/or default navigation enabling;
wherein, the focus navigation object is a JS extension object of an IPTV service platform realized by using an interface definition language IDL.
7. An IPTV browser, comprising:
the page loading module is used for responding to the starting instruction, calling a webpage loading method of a chrome kernel through a self-defined ShellManager subclass to load an authentication page, and loading an IPTV page after the authentication is successful;
the authentication module is used for realizing an authentication object of the IPTV service platform through the ShellManager subclass in an authentication page and carrying out authentication operation;
the remote control key module is used for processing a remote controller key event in the loaded page through the ShellManager subclass;
and the media playing module is used for controlling media playing through a self-defined playing interface in the loaded page.
8. The IPTV browser of claim 7, wherein:
the ShellManager subclass calls an addJavascript interface method to map the authentication object to a self-defined authentication class, calls a getWebContents method of the Shell class to obtain a WebContents class, and associates the WebContents class and the self-defined authentication class through the Javascript Injector class.
9. The IPTV browser of claim 7, wherein:
the playing interface comprises a self-defined JNI class, a media playing object and a playing control method, wherein the media playing object is created by using an interface definition language IDL, and the media playing object comprises a method for acquiring a local player sequence number and at least one of the following playing control methods: setting the position of a video window, starting playing from the beginning and joining in multicast;
the media playing module is used for creating a media playing object corresponding to the local player according to the media playing object in a first process, adding a self-defined playing control communication method to the created media playing object in a LocalFrameClient subclass and a RenderFrameImpl class through a LocalFrame class, and transmitting a playing control instruction between playing control communication methods corresponding to the RenderFrameHostImpl class through IPC (inter-process control) and the RenderFrameHostImpl class; and in the second process, the renderframehostjmpl class controls the playing of the native player through the play control method of the JNI class and the corresponding play control method in the media play class.
10. The IPTV browser of claim 7, wherein:
the remote control key module is used for responding to a remote controller key event, calling a dispatch keyevent method of a View type through an Android system to send an obtained key value, receiving the key value by a ContentViewCor, calling a key value conversion method and a blink process, and executing JS processing logic corresponding to the key value in a page; and the dispatchKeyEvent method in the ShellManager subclass receives the key value of the key and processes the specified key value.
The IPTV browser also comprises a focus navigation module and a media information module;
the focus navigation module is used for building a focus navigation object in a page newly according to a self-defined focus navigation object arranged in the DOMWindex class, transmitting a LocalFrame class name into the page, and calling a render process through the LocalFrame class to realize focus frame display and/or default navigation enabling; the focus navigation object is a JS extension object of an IPTV service platform realized by using an interface definition language IDL;
the media information module is used for acquiring and storing the playing information from the local player through a self-defined Event class based on the playing information of the local player, and calling a dispatchKeyEvent method of the ShellManager subclass to send a specified key value; ContentViewCore obtains the specified key value, and call the JS processing logic corresponding to the specified key value in the blink process execution page, the JS processing logic calls the getEvent method of the JS extension object Utility to obtain the stored playing information and execute the corresponding operation, wherein the JS extension object Utility is realized through the ShellManager subclass.
CN201910717971.0A 2019-08-05 2019-08-05 IPTV browser page implementation method and IPTV browser Active CN110609964B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910717971.0A CN110609964B (en) 2019-08-05 2019-08-05 IPTV browser page implementation method and IPTV browser

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910717971.0A CN110609964B (en) 2019-08-05 2019-08-05 IPTV browser page implementation method and IPTV browser

Publications (2)

Publication Number Publication Date
CN110609964A true CN110609964A (en) 2019-12-24
CN110609964B CN110609964B (en) 2022-03-11

Family

ID=68890318

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910717971.0A Active CN110609964B (en) 2019-08-05 2019-08-05 IPTV browser page implementation method and IPTV browser

Country Status (1)

Country Link
CN (1) CN110609964B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314791A (en) * 2020-03-19 2020-06-19 杭州趣维科技有限公司 Seamless jump method in video playing based on Android
CN114374869A (en) * 2022-01-05 2022-04-19 烽火通信科技股份有限公司 Panoramic video playing method and device and computer storage medium
CN115334343A (en) * 2022-08-01 2022-11-11 中国电信股份有限公司 Method and device for controlling IPTV service
CN115379277A (en) * 2022-08-22 2022-11-22 武汉烽火技术服务有限公司 VR panoramic video playing method and system based on IPTV service

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119410A1 (en) * 2004-04-16 2009-05-07 Utstarcom, Inc. Middleware architecture for iptv multimedia streaming
CN107491330A (en) * 2017-08-08 2017-12-19 中国科学院声学研究所 A kind of method for improving the built-in browser speed of service
CN109104629A (en) * 2018-08-02 2018-12-28 四川长虹电器股份有限公司 A kind of method and browser of the compatible IPTV page and the public network page
CN109948092A (en) * 2019-03-20 2019-06-28 四川长虹电器股份有限公司 A kind of method of Android TV platform lightweight browsers engine pages button control

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119410A1 (en) * 2004-04-16 2009-05-07 Utstarcom, Inc. Middleware architecture for iptv multimedia streaming
CN107491330A (en) * 2017-08-08 2017-12-19 中国科学院声学研究所 A kind of method for improving the built-in browser speed of service
CN109104629A (en) * 2018-08-02 2018-12-28 四川长虹电器股份有限公司 A kind of method and browser of the compatible IPTV page and the public network page
CN109948092A (en) * 2019-03-20 2019-06-28 四川长虹电器股份有限公司 A kind of method of Android TV platform lightweight browsers engine pages button control

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314791A (en) * 2020-03-19 2020-06-19 杭州趣维科技有限公司 Seamless jump method in video playing based on Android
CN114374869A (en) * 2022-01-05 2022-04-19 烽火通信科技股份有限公司 Panoramic video playing method and device and computer storage medium
CN114374869B (en) * 2022-01-05 2023-05-23 烽火通信科技股份有限公司 Panoramic video playing method and device and computer storage medium
CN115334343A (en) * 2022-08-01 2022-11-11 中国电信股份有限公司 Method and device for controlling IPTV service
CN115379277A (en) * 2022-08-22 2022-11-22 武汉烽火技术服务有限公司 VR panoramic video playing method and system based on IPTV service
CN115379277B (en) * 2022-08-22 2023-07-25 烽火通信科技股份有限公司 VR panoramic video playing method and system based on IPTV service

Also Published As

Publication number Publication date
CN110609964B (en) 2022-03-11

Similar Documents

Publication Publication Date Title
CN110609964B (en) IPTV browser page implementation method and IPTV browser
US10397511B2 (en) Method for television remote keypress response based on android operating system and television thereof
CN111131907B (en) Live content introduction method and device, storage medium and equipment
CN112383539A (en) Method and device for calling cloud browser based on remote process and electronic equipment
CN106027631B (en) Data transmission method and device
CN113992958A (en) Multi-window same-screen interaction method, terminal and storage medium
CN114302201B (en) Method for automatically switching on and off screen in sound box mode, intelligent terminal and display device
US7600045B2 (en) Information processor
CN105867980A (en) Method and device for processing keys of terminals
CN112612436A (en) Screen projection switching method, device, equipment and storage medium
JP2003308205A (en) Method for temporarily halting program
WO2018113559A1 (en) Webpage interactive method and device
US7774800B2 (en) Applications manager with variable management instruction set
CN113316014B (en) Display device, server and third-party data display control method
CN113495711A (en) Display apparatus and display method
CN112911359B (en) Resource display method, display equipment and remote controller
US8875182B2 (en) Data broadcast processing device, method and program having features that prevent simultaneous execution of imcompatible processes
CN113626130A (en) Video application program processing method and device, computer equipment and storage medium
CN107678737B (en) Service processing method and device and self-service terminal equipment
CN113542901A (en) Display device and fast switching display method of network channels
CN113590238A (en) Display control method, cloud service method, device, electronic equipment and storage medium
CN112487322A (en) Third-party application Loading page Loading method and display equipment
CN102870428B (en) Method and apparatus in IPTV terminal
JP2007122647A (en) Method, system and device for providing program data
US20230111113A1 (en) Page loading method and display apparatus

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