CN104519060B - It reads parameter and calls the method and device of service - Google Patents

It reads parameter and calls the method and device of service Download PDF

Info

Publication number
CN104519060B
CN104519060B CN201410784067.9A CN201410784067A CN104519060B CN 104519060 B CN104519060 B CN 104519060B CN 201410784067 A CN201410784067 A CN 201410784067A CN 104519060 B CN104519060 B CN 104519060B
Authority
CN
China
Prior art keywords
management interface
service
parameter
services management
information
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
Application number
CN201410784067.9A
Other languages
Chinese (zh)
Other versions
CN104519060A (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.)
Shenzhen Gongjin Electronics Co Ltd
Original Assignee
Shenzhen Gongjin Electronics 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 Shenzhen Gongjin Electronics Co Ltd filed Critical Shenzhen Gongjin Electronics Co Ltd
Priority to CN201410784067.9A priority Critical patent/CN104519060B/en
Publication of CN104519060A publication Critical patent/CN104519060A/en
Application granted granted Critical
Publication of CN104519060B publication Critical patent/CN104519060B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Telephonic Communication Services (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention is suitable for android system technical field, provides a kind of method and device for reading parameter and calling service, and the method is applied to OTT boxes, including:Start verification information is obtained from default services management interface, the start verification information is sent to far-end server, to ask start certification;After start certification success, sent to the services management interface and preserve solicited message, user information to be saved is saved in OTT boxes by the services management interface;When calling service, call request information is sent to the services management interface, the corresponding application service of the call request information is called to pass through the services management interface.The present invention passes through the unified parameter information for obtaining, managing OTT boxes of services management interface, and multiple application services is supplied to share, solve the problems, such as in existing android system OTT boxes by Launcher to read, undated parameter or call transplantability, very flexible caused by service.

Description

It reads parameter and calls the method and device of service
Technical field
The invention belongs to android system technical field more particularly to read parameter and the method and device of calling service.
Background technology
In order to ensure security, reliability, Android OTT boxes are in starting up Launcher (in Android system Desktop starter) when, it is necessary to according to user name, password, MAC Address, SN information etc. to far-end server initiate start certification.Not Homepage must not be shown during certification success, homepage is logged in after certification success, to dock screen management platform, support screen resource file Acquisition, dynamic update, provide set function, the system interfaces such as family multi-media interface, call business etc. built in set-top box.
However, the prior art is to behaviour such as the start certification of far-end server, source of screen file acquisition, dynamic updates Make, be read by Launcher, undated parameter is completed to dock, ROM storages will be adapted to again by replacing Launcher every time Device, transplantability is poor, and wastes memory space;Further, the prior art is called by Launcher sets function, family more The application such as media is write on inside code, can only call the corresponding function of code or application, and other application cannot be called to take Business lacks flexibility and controllability.
The content of the invention
In consideration of it, the embodiment of the present invention is to provide a kind of method and device for reading parameter and calling service, to solve In existing android system OTT boxes by Launcher to read, undated parameter or call service caused by transplantability, The problem of very flexible.
In a first aspect, a kind of method for reading parameter and calling service, the method are applied to OTT boxes, including:
Start verification information is obtained from default services management interface, the start verification information is sent to remote service Device, to ask start certification;
It after start certification success, is sent to the services management interface and preserves solicited message, to be managed by the service User information to be saved is saved in OTT boxes by reason interface;
When calling service, call request information is sent to the services management interface, to be connect by the service management Mouth calls the corresponding application service of the call request information.
Further, the default services management interface is the supervisor services established in Framework frames.
Further, it is described start verification information include user account, password, MAC physical address, user permission and Paid cases.
Further, it is described when calling service, call request information is sent to default services management interface, to pass through The default management service interface calls the corresponding application service of the call request information to include:
To the services management interface send call request information, from the services management interface get parms title and Parameter type;
According to the parameter type, by the services management interface application corresponding with the parameter type is called to take Business, the application service are the application service in OTT boxes.
Further, the user information to be saved includes user account in start verification information, password or treats Newer parameter;
It is described it is described start certification success after, to the services management interface send preserve solicited message, to pass through Stating services management interface user information to be saved is saved in OTT boxes includes:
After start certification success, user information to be saved is read by the services management interface, and is passed through described The user information is saved in OTT boxes by management service interface.
Second aspect, a kind of device for reading parameter and calling service, described device are located in OTT boxes, including:
Authentication module, for obtaining start verification information from default services management interface, by the start verification information Far-end server is sent to, to ask start certification;
Read module, for after start certification success, being sent to the services management interface and preserving solicited message, with logical It crosses the services management interface and user information to be saved is saved in OTT boxes;
Calling module, for when calling service, call request information being sent to the services management interface, to pass through It states services management interface and calls the corresponding application service of the call request information.
Further, the default services management interface is the supervisor services established in Framework frames.
Further, it is described start verification information include user account, password, MAC physical address, user permission and Paid cases.
Further, the calling module includes:
Parameter acquiring unit for sending call request information to the services management interface, connects from the service management Mouth gets parms title and parameter type;
Call unit, for according to the parameter type, being called and the parameter type by the services management interface Corresponding application service, the application service are the application service in OTT boxes.
Further, the user information to be saved includes user account in start verification information, password or treats Newer parameter;
The read module is specifically used for:
After start certification success, user information to be saved is read by the services management interface, and is passed through described The user information is saved in OTT boxes by management service interface.
Compared with prior art, the embodiment of the present invention pre-establishes services management interface, and applied in OTT boxes; When being docked with remote server, start verification information is obtained from default services management interface, by the start verification letter Breath is sent to far-end server, to ask start certification;After start certification success, send and preserve to the services management interface Solicited message, user information to be saved is saved in OTT boxes by the services management interface;When calling service, Call request information is sent to the services management interface, to call the call request information by the services management interface Corresponding application service;It is achieved thereby that the parameter information of OTT boxes is uniformly obtained, managed by services management interface, with And multiple application services is supplied to share, solve in existing android system OTT boxes by Launcher to read, more Caused by new parameter or calling service the problem of transplantability, very flexible so that Launcher can flexibly call different answer With service.
Description of the drawings
It in order to illustrate more clearly about the embodiment of the present invention or technical scheme of the prior art, below will be to embodiment or existing There is attached drawing needed in technology description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this Some embodiments of invention, for those of ordinary skill in the art, without having to pay creative labor, may be used also To obtain other attached drawings according to these attached drawings.
Fig. 1 is the reading parameter that the embodiment of the present invention one provides and the realization flow chart for calling method of servicing;
Fig. 2 is reading parameter provided by Embodiment 2 of the present invention and the composition structure chart for calling service unit.
Specific embodiment
In order to make the purpose , technical scheme and advantage of the present invention be clearer, with reference to the accompanying drawings and embodiments, it is right The present invention is further elaborated.It should be appreciated that the specific embodiments described herein are merely illustrative of the present invention, and It is not used in the restriction present invention.
In the embodiment of the present invention, services management interface is pre-established, and applied in OTT boxes;With remote server When being docked, start verification information is obtained from default services management interface, the start verification information is sent to distal end Server, to ask start certification;After start certification success, sent to the services management interface and preserve solicited message, with User information to be saved is saved in by OTT boxes by the services management interface;When calling service, managed to the service It manages interface and sends call request information, by the services management interface the corresponding application of the call request information to be called to take Business;It is achieved thereby that it uniformly obtains by services management interface, manage the parameter information of OTT boxes and is supplied to multiple Application service is shared, and is solved in existing android system through Launcher to read, undated parameter or service is called to lead The problem of transplantability of cause, very flexible so that Launcher can flexibly call different application services.The embodiment of the present invention is also Corresponding device is provided, is described in detail individually below.
Embodiment one
Fig. 1 shows the reading parameter that the embodiment of the present invention one provides and the realization flow chart for calling method of servicing, in order to Convenient for explanation, part related to the present invention is illustrated only.
In the present invention is implemented, the method is used to implement parameter reading and the service call of OTT boxes.OTT boxes, i.e., OTT set-top box refers to the equipment that various application services are provided a user by internet.
As shown in Figure 1, the described method includes:
In step S101, start verification information is obtained from default services management interface, by the start verification information Far-end server is sent to, to ask start certification.
In embodiments of the present invention, the default services management interface takes for the management established in Framework frames Business program for unified acquisition, the parameter information of management OTT boxes, and provides parameters to multiple application services and shares.
It is described start verification information include but not limited to user account, password, MAC physical address, user permission and Paid cases.The embodiment of the present invention obtains use before online Launcher is logged in by default services management interface The parameter informations such as family account, password, MAC Address, and far-end server is transmitted to, to ask far-end server verification above-mentioned Whether parameter information meets permission and the payment of registration conditions and user.
In step s 102, after start certification success, sent to the services management interface and preserve solicited message, with logical It crosses the services management interface and user information to be saved is saved in OTT boxes.
If starting shooting after certification success, screen management platform is loaded, and in real time by the default services management interface User information to be saved is read, and the user information is saved in OTT boxes using the default services management interface. Wherein, the user information to be saved includes user account, password or the parameter to be updated in start verification information.
Wherein, reading parameter interface prototype is:
String getValue(String name);
Undated parameter interface prototype is:
Int update(String name,String value,int attribute)。
By above-mentioned steps, services management interface is established in Framework, by the services management interface in real time It reads or undated parameter and the such as parameters such as user account, password is saved in OTT boxes, to complete start certification, screen The operations such as resource file acquisition, dynamic undated parameter, avoid read by Launcher, undated parameter come complete with distal end take The docking of business device;When replacing Launcher, it is not required that be adapted to ROM memory again, convenient for the transplanting of Launcher, and subtract The waste of memory space resource is lacked.
In step s 103, when calling service, call request information is sent to the services management interface, to pass through It states services management interface and calls the corresponding application service of the call request information.
In embodiments of the present invention, different Launcher calls application service by the services management interface, specifically Including:
A. to the services management interface send call request information, from the services management interface get parms title with And parameter type.
B. according to the parameter type, by the services management interface application corresponding with the parameter type is called to take Business, the application service are the application service in OTT boxes.
Since services management interface can read in real time, undated parameter, and provide parameters to different application services and be total to It enjoys so that Launcher calls different services by parameter type, realizes and flexibly calls setting function, the more matchmakers of family on demand The third-party applications service such as body improves flexibility and controllability that Launcher calls application service.
In the embodiment of the present invention, services management interface is pre-established, and applied in OTT boxes;With remote server When being docked, start verification information is obtained from default services management interface, the start verification information is sent to distal end Server, to ask start certification;After start certification success, sent to the services management interface and preserve solicited message, with User information to be saved is saved in by OTT boxes by the services management interface;When calling service, managed to the service It manages interface and sends call request information, by the services management interface the corresponding application of the call request information to be called to take Business;It is achieved thereby that it uniformly obtains by services management interface, manage the parameter information of OTT boxes and is supplied to multiple Application service is shared, and is solved in existing android system through Launcher to read, undated parameter or service is called to lead The problem of transplantability of cause, very flexible so that Launcher can flexibly call different application services.
Embodiment two
Fig. 2 shows reading parameter provided by Embodiment 2 of the present invention and calls the composition structure of service unit, in order to just In explanation, part related to the present invention is illustrated only.
In embodiments of the present invention, described device is used to implement the parameter reading kimonos of the OTT boxes described in Fig. 1 embodiments Business call method.Described device can be built in software unit, the hardware cell or soft of OTT boxes (i.e. OTT set-top box) The unit of combination of hardware.
As shown in Fig. 2, described device includes:
Authentication module 21, for obtaining start verification information from default services management interface, by the start verification letter Breath is sent to far-end server, to ask start certification.
Read module 22, for after start certification success, being sent to the services management interface and preserving solicited message, with User information to be saved is saved in by OTT boxes by affiliated services management interface.
Calling module 23, for when calling service, call request information being sent to the services management interface, to pass through The services management interface calls the corresponding application service of the call request information.
Further, the services management interface is the supervisor services established in Framework frames, for unified It obtains, the parameter information of management OTT boxes, and multiple application services is supplied to share.
Further, it is described start verification information include user account, password, MAC physical address, user permission and Paid cases.
In embodiments of the present invention, Launcher by the name that gets parms, judge parameter type start accordingly should With service, that is, service.Therefore, the calling module 23 includes:
Parameter acquiring unit 231, for sending call request information to the services management interface, from services management interface The title that gets parms and parameter type.
Call unit 232, for according to the parameter type, being called and the parameter class by the services management interface The corresponding application service of type, the application service are the application service in OTT boxes.
Further, the user information to be saved includes user account in start verification information, password or treats Newer parameter.
The read module 22 is specifically used for:
After start certification success, when parameter is read, user to be saved is read by the services management interface and is believed Breath, and the user information is saved in by OTT boxes by the services management interface.
Since the embodiment of the present invention read by services management interface in real time, undated parameter, and provide parameters to other Using so that Launcher calls different services by parameter type, realizes and flexibly calls setting function, family multi-media etc. Third-party application service improves flexibility and controllability that Launcher calls application service.
It should be noted that the device in the embodiment of the present invention can be used to implement whole skills in above method embodiment Art scheme, the function of each function module can be implemented according to the method in above method embodiment, specific implementation Process can refer to the associated description in above-described embodiment, and details are not described herein again.
In the embodiment of the present invention, services management interface is pre-established, and applied in OTT boxes;With remote server When being docked, start verification information is obtained from default services management interface, the start verification information is sent to distal end Server, to ask start certification;After start certification success, sent to the services management interface and preserve solicited message, with User information to be saved is saved in by OTT boxes by the services management interface;When calling service, managed to the service It manages interface and sends call request information, by the services management interface the corresponding application of the call request information to be called to take Business;It is achieved thereby that it uniformly obtains by services management interface, manage the parameter information of OTT boxes and parameter is provided It shares, solves in existing android system through Launcher to read, undated parameter or calling to multiple application services Caused by service the problem of transplantability, very flexible so that Launcher can flexibly call different application services.
Those of ordinary skill in the art may realize that each exemplary lists described with reference to the embodiments described herein Member and algorithm steps can be realized with the combination of electronic hardware or computer software and electronic hardware.These functions are actually It is performed with hardware or software mode, specific application and design constraint depending on technical solution.Professional technician Described function can be realized using distinct methods to each specific application, but this realization is it is not considered that exceed The scope of the present invention.
It is apparent to those skilled in the art that for convenience and simplicity of description, the system of foregoing description, The specific work process of device and unit may be referred to the corresponding process in preceding method embodiment, and details are not described herein.
In several embodiments provided herein, it should be understood that disclosed apparatus and method can pass through it Its mode is realized.For example, the apparatus embodiments described above are merely exemplary, for example, the division of the unit, only Only a kind of division of logic function can have other dividing mode in actual implementation, such as multiple units or component can be tied It closes or is desirably integrated into another system or some features can be ignored or does not perform.It is another, it is shown or discussed Mutual coupling, direct-coupling or communication connection can be the INDIRECT COUPLING or logical by some interfaces, device or unit Letter connection can be electrical, machinery or other forms.
The unit illustrated as separating component may or may not be physically separate, be shown as unit The component shown may or may not be physical location, you can be located at a place or can also be distributed to multiple In network element.Some or all of unit therein can be selected to realize the mesh of this embodiment scheme according to the actual needs 's.
In addition, each functional unit in each embodiment of the present invention can be integrated in a processing unit, it can also That unit is individually physically present, can also two or more units integrate in a unit.
If the function is realized in the form of SFU software functional unit and is independent production marketing or in use, can be with It is stored in a computer read/write memory medium.Based on such understanding, technical scheme is substantially in other words The part contribute to the prior art or the part of the technical solution can be embodied in the form of software product, the meter Calculation machine software product is stored in a storage medium, is used including some instructions so that a computer equipment (can be People's computer, server or network equipment etc.) perform all or part of the steps of the method according to each embodiment of the present invention. And foregoing storage medium includes:USB flash disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), arbitrary access are deposited The various media that can store program code such as reservoir (RAM, Random Access Memory), magnetic disc or CD.
The above description is merely a specific embodiment, but protection scope of the present invention is not limited thereto, any Those familiar with the art in the technical scope disclosed by the present invention, can readily occur in change or replacement, should all contain Lid is within protection scope of the present invention.Therefore, protection scope of the present invention described should be subject to the protection scope in claims.

Claims (8)

  1. A kind of 1. method for reading parameter and calling service, which is characterized in that the method is applied to OTT boxes, including:
    Start verification information is obtained from default services management interface, the start verification information is sent to far-end server, With request start certification;
    After start certification success, sent to the services management interface and preserve solicited message, to be connect by the service management User information to be saved is saved in OTT boxes by mouth, and the user information to be saved includes the use in start verification information Family account, password or parameter to be updated;
    When calling service, call request information is sent to the services management interface, to pass through the services management interface tune With the corresponding application service of the call request information;
    The default services management interface is the supervisor services established in Framework frames, for unified acquisition, pipe The parameter information of OTT boxes is managed, and provides parameters to multiple application services and shares.
  2. 2. parameter and the method for calling service are read as described in claim 1, which is characterized in that the start verification information bag Include user account, password, MAC physical address, the permission of user and paid cases.
  3. 3. reading parameter and the method for calling service as described in claim 1, which is characterized in that it is described when calling service, Call request information is sent to default services management interface, to call the calling by the default management service interface The corresponding application service of solicited message includes:
    Call request information is sent to the services management interface, is got parms title and parameter from the services management interface Type;
    According to the parameter type, application service corresponding with the parameter type, institute are called by the services management interface Application service is stated as the application service in OTT boxes.
  4. 4. parameter and the method for calling service are read as described in claim 1, which is characterized in that described in start certification success Afterwards, sent to the services management interface and preserve solicited message, to be believed user to be saved by the services management interface Breath, which is saved in OTT boxes, to be included:
    After start certification success, user information to be saved is read by the services management interface, and passes through the management The user information is saved in OTT boxes by service interface.
  5. 5. a kind of device for reading parameter and calling service, which is characterized in that described device is located in OTT boxes, including:
    For obtaining start verification information from default services management interface, the start verification information is sent for authentication module To far-end server, to ask start certification;
    Read module, for after start certification success, being sent to the services management interface and preserving solicited message, to pass through It states services management interface and user information to be saved is saved in OTT boxes, the user information to be saved includes start and tests Demonstrate,prove user account, password or the parameter to be updated in information;
    Calling module, for when calling service, call request information being sent to the services management interface, to pass through the clothes The corresponding application service of management interface calling of the being engaged in call request information;
    The default services management interface is the supervisor services established in Framework frames, for unified acquisition, pipe The parameter information of OTT boxes is managed, and provides parameters to multiple application services and shares.
  6. It 6. reads parameter as claimed in claim 5 and calls the device of service, which is characterized in that the start verification information bag Include user account, password, MAC physical address, the permission of user and paid cases.
  7. It 7. reads parameter as claimed in claim 5 and calls the device of service, which is characterized in that the calling module includes:
    Parameter acquiring unit for sending call request information to the services management interface, is obtained from the services management interface Take parameter name and parameter type;
    Call unit, for according to the parameter type, being called by the services management interface corresponding with the parameter type Application service, the application service is the application service in OTT boxes.
  8. It 8. reads parameter as claimed in claim 5 and calls the device of service, which is characterized in that the read module is specifically used In:
    After start certification success, user information to be saved is read by the services management interface, and passes through the management The user information is saved in OTT boxes by service interface.
CN201410784067.9A 2014-12-16 2014-12-16 It reads parameter and calls the method and device of service Active CN104519060B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410784067.9A CN104519060B (en) 2014-12-16 2014-12-16 It reads parameter and calls the method and device of service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410784067.9A CN104519060B (en) 2014-12-16 2014-12-16 It reads parameter and calls the method and device of service

Publications (2)

Publication Number Publication Date
CN104519060A CN104519060A (en) 2015-04-15
CN104519060B true CN104519060B (en) 2018-05-25

Family

ID=52793782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410784067.9A Active CN104519060B (en) 2014-12-16 2014-12-16 It reads parameter and calls the method and device of service

Country Status (1)

Country Link
CN (1) CN104519060B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106331860B (en) * 2015-06-25 2020-06-16 中兴通讯股份有限公司 Method, equipment and system for service adaptation of set top box
CN110908739B (en) * 2019-11-28 2020-12-01 广东汉鼎蜂助手网络技术有限公司 Method, device and equipment for realizing data docking with third-party Launcher

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101170676A (en) * 2007-11-19 2008-04-30 中兴通讯股份有限公司 Method and system for encrypting user login information in interactive network TV system
CN101895670A (en) * 2010-07-20 2010-11-24 深圳市茁壮网络股份有限公司 Universal digital television middleware system
CN102413371A (en) * 2010-09-19 2012-04-11 中国电信股份有限公司 Set top box application program local calling method and application management device
CN103686365A (en) * 2013-12-11 2014-03-26 上海巍岭数码科技有限公司 Android set top box system under B/S service model

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8719921B2 (en) * 2010-08-30 2014-05-06 Mobitv, Inc. User and device authentication for media services

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101170676A (en) * 2007-11-19 2008-04-30 中兴通讯股份有限公司 Method and system for encrypting user login information in interactive network TV system
CN101895670A (en) * 2010-07-20 2010-11-24 深圳市茁壮网络股份有限公司 Universal digital television middleware system
CN102413371A (en) * 2010-09-19 2012-04-11 中国电信股份有限公司 Set top box application program local calling method and application management device
CN103686365A (en) * 2013-12-11 2014-03-26 上海巍岭数码科技有限公司 Android set top box system under B/S service model

Also Published As

Publication number Publication date
CN104519060A (en) 2015-04-15

Similar Documents

Publication Publication Date Title
CN104054301B (en) Remotely access the session transmission and hang-up in application framework
CN106325933B (en) Batch data synchronous method and device
CN104142847B (en) Stateless virtual machine and its application under cloud computing environment
CN106850746B (en) The method and device of smooth service upgrading
CN108305072A (en) Dispose method, equipment and the computer storage media of block chain network
CN108351772A (en) Across the identifier of application example
CN104573093B (en) A kind of method and apparatus for managing file directory
CN103885426B (en) Control method, client, server, intermediate equipment and the controlled device of equipment
DE112014006112T5 (en) Applet migration in a secure element
CN108845861A (en) The implementation method and device of Softcam
CN106649164B (en) Hardware interface management method
CN108234475A (en) Account management method, electronic equipment and computer storage media
CN108363583A (en) A kind of chip update method, equipment and storage medium based on BMC
CN109660372B (en) SDN service configuration method and device
CN103761136A (en) Method for dynamically loading data model based on plug-in
CN106843978A (en) A kind of SDK cut-in methods and system
CN109597628A (en) The method and cloud handset server of cloud mobile phone application copy
CN108141405A (en) Modification to the Email content transmitted
CN106325870A (en) Realization method and device of API (Application Programming Interface) of dynamic form
CN104519060B (en) It reads parameter and calls the method and device of service
WO2016026329A1 (en) Terminal upgrade method and apparatus
CN108366101A (en) Information processing system, the control method of information processing system and storage medium
CN105930249B (en) Using monitoring method and device
CN106775952A (en) A kind of process management method and device of Android application
CN108259942A (en) Obtain the method, apparatus and system of preview advertisement

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant