CN112579078A - Human-computer interface layout method, multimedia system and vehicle - Google Patents

Human-computer interface layout method, multimedia system and vehicle Download PDF

Info

Publication number
CN112579078A
CN112579078A CN201910927462.0A CN201910927462A CN112579078A CN 112579078 A CN112579078 A CN 112579078A CN 201910927462 A CN201910927462 A CN 201910927462A CN 112579078 A CN112579078 A CN 112579078A
Authority
CN
China
Prior art keywords
control
drawer
layout
sub
opening
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910927462.0A
Other languages
Chinese (zh)
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.)
Baoneng Automobile Group Co Ltd
Original Assignee
Baoneng Automobile Group 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 Baoneng Automobile Group Co Ltd filed Critical Baoneng Automobile Group Co Ltd
Priority to CN201910927462.0A priority Critical patent/CN112579078A/en
Publication of CN112579078A publication Critical patent/CN112579078A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

The application provides a layout method of a human-computer interface, a multimedia system and a vehicle. The layout method of the human-computer interface comprises the following steps: creating a drawer control and defining the attribute of the drawer control, wherein the drawer control inherits a view group base class; appointing a child control in the layout container according to the attribute of the drawer control; the method for rewriting the drawing view is used for calculating the position information of the corresponding sub-control when the drawer control is at a plurality of opening degrees; the rewriting layout method is used for performing layout according to the position information of the corresponding sub-control when the drawer control is at a plurality of openings; and displaying corresponding layout according to the opening degree of the drawer control dragged. The layout method of the human-computer interface can avoid the situation that the display layout of the human-computer interface is single, and the display layout of the human-computer interface is diversified, so that the diversified requirements of a user on the human-computer interface are met, and the user experience is improved.

Description

Human-computer interface layout method, multimedia system and vehicle
Technical Field
The application relates to the technical field of automobile manufacturing, in particular to a layout method of a human-computer interface, a multimedia system and a vehicle.
Background
In the related art, the vehicle-mounted multimedia systems are increasingly configured on the vehicle, and the vehicle-mounted multimedia systems are developed towards higher technological sense, cool sense and the like. However, there are the following technical problems:
the human-computer interface display layout of the vehicle-mounted multimedia system is relatively single, so that the pursuit of a user on the diversification and individuation of the human-computer interface is influenced, and the use experience effect is poor.
Disclosure of Invention
The present application is directed to solving at least one of the above problems.
Therefore, an object of the present application is to provide a layout method of a human-machine interface based on an android system. The method can avoid the single display layout of the human-computer interface, and diversify the display layout of the human-computer interface, thereby meeting the diversified requirements of users on the human-computer interface and improving the user experience.
A second objective of the present application is to provide a vehicle-mounted multimedia system based on the android system.
A third object of the present application is to propose a vehicle.
In order to achieve the above object, a first aspect of the present application discloses a layout method for a human-machine interface based on an android system, including: creating a drawer control and defining the attribute of the drawer control, wherein the drawer control inherits a view group base class; appointing a child control in the layout container according to the attribute of the drawer control; the method for rewriting the drawing view is used for calculating the position information of the corresponding sub-control when the drawer control is at a plurality of opening degrees; the rewriting layout method is used for performing layout according to the position information of the corresponding sub-control when the drawer control is at a plurality of openings; and displaying corresponding layout according to the opening degree of the drawer control dragged.
According to the man-machine interface layout method based on the android system, the display layout singleness of the man-machine interface can be avoided, the display layout of the man-machine interface is diversified, accordingly, the diversified requirements of a user on the man-machine interface are met, and the user experience is improved.
In some examples, the specifying of the child controls in the layout container according to the properties of the drawer control includes: and appointing the child controls in the layout container in an XML file according to the attributes of the drawer controls.
In some examples, the position information of the sub-control comprises a width and a height of the sub-control, and the rewriting the drawing view method to calculate the position information of the corresponding sub-control of the drawer control at a plurality of opening degrees comprises: and respectively calculating the width and the height of the sub-control when the drawer control is closed, the width and the height of the sub-control when the drawer control is half opened and the width and the height of the sub-control when the drawer control is fully opened.
In some examples, further comprising: loading the drawer control; judging whether the drawer control is opened by default; if yes, displaying the corresponding layout according to the default set drawer opening.
In some examples, further comprising: judging whether the opening of dragging the drawer control is larger than the default drawer opening; if so, stopping dragging, and opening the drawer to the opening of the drawer control dragged to display the corresponding layout; if not, stopping dragging, and then recovering to the default set drawer opening degree to display the corresponding layout.
A second aspect of the present application discloses an on-vehicle multimedia system based on android system, includes: the control unit is used for creating a drawer control and defining the attribute of the drawer control, wherein the drawer control inherits a view group base class, appoints a sub-control in a layout container according to the attribute of the drawer control, rewrites a drawing method to calculate the position information of the sub-control corresponding to the drawer control at a plurality of opening degrees, rewrites the layout method to perform layout according to the position information of the sub-control corresponding to the drawer control at the plurality of opening degrees; and the display unit is used for displaying corresponding layout according to the opening degree of the dragged drawer control.
According to the vehicle-mounted multimedia system based on the android system, the display layout singleness of the human-computer interface can be avoided, the display layout of the human-computer interface is diversified, accordingly, the diversified requirements of a user on the human-computer interface are met, and the user experience is improved.
In some examples, the control unit is configured to specify the child controls in the layout container in an XML file according to the attributes of the drawer controls.
In some examples, the position information of the sub-control includes a width and a height of the sub-control, and the control unit is configured to calculate the width and the height of the sub-control when the drawer control is closed, the width and the height of the sub-control when the drawer control is half opened, and the width and the height of the sub-control when the drawer control is fully opened, respectively.
In some examples, the control unit is further configured to load the drawer control and determine whether to open the drawer control by default, and the display unit is further configured to display a corresponding layout according to a default drawer opening when the control unit determines to open the drawer control by default.
In some examples, the control unit is further configured to determine whether an opening for dragging the drawer control is greater than the default drawer opening, if so, after the dragging is stopped, the drawer is opened to the opening for dragging the drawer control, so that the corresponding layout is displayed through the display unit, and if not, after the dragging is stopped, the drawer is restored to the default drawer opening, so that the corresponding layout is displayed through the display unit.
A third aspect of the present application discloses a vehicle comprising: the android system-based vehicle-mounted multimedia system according to the second aspect. The display layout of the human-computer interface on the vehicle is diversified, so that the diversified requirements of a user on the human-computer interface are met, and the user experience of the vehicle is improved.
Additional aspects and advantages of the present application will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the present application.
Drawings
The foregoing and/or additional aspects and advantages of the present application will become apparent and readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
FIG. 1 is a flow chart of a method for layout of a human-machine interface based on an android system according to an embodiment of the application;
FIG. 2 is a flow diagram of a method for android based human machine interface layout according to another embodiment of the present application;
fig. 3A is a schematic view of a display interface when a drawer control is closed in a layout method of a human-computer interface based on an android system according to an embodiment of the present application;
fig. 3B is a schematic view of a display interface when a drawer control is opened in the layout method of the man-machine interface based on the android system according to an embodiment of the present application;
fig. 4 is a block diagram of a vehicle-mounted multimedia system based on an android system according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to embodiments of the present application, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the drawings are exemplary only for the purpose of explaining the present application and are not to be construed as limiting the present application.
In the description of the present application, it is to be understood that the terms "center," "longitudinal," "lateral," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," and the like are used in the orientation or positional relationship indicated in the drawings for convenience in describing the present application and for simplicity in description, and are not intended to indicate or imply that the referenced devices or elements must have a particular orientation, be constructed in a particular orientation, and be operated in a particular manner, and are not to be considered limiting of the present application. Furthermore, the terms "first" and "second" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance.
The following describes a layout method of a human-computer interface, a multimedia system and a vehicle according to an embodiment of the application with reference to the drawings.
Fig. 1 is a flowchart of a layout method of a man-machine interface based on an android system according to an embodiment of the present application. As shown in fig. 1, a method for laying out a human-machine interface based on an android system according to an embodiment of the present application includes the following steps:
s101: and creating a drawer control and defining the attribute of the drawer control, wherein the drawer control inherits the view group base class.
For example: a drawer control is customized and inherited to a viewGroup (namely, a view group base class), namely, the drawer control is inherited to a customized HMI (Human Machine Interface) control of the viewGroup.
After the user-defined drawer control is finished, initializing the drawer control, namely: a plurality of attributes of the drawer control are defined, and in a specific example, the attributes of the drawer control include, but are not limited to, Handler (handle), content (content), drag (drag control), and dragtype (drag direction), wherein the Handler (handle), the content (content), the drag (drag control), and the dragtype (drag direction).
S102: and appointing the child controls in the layout container according to the attributes of the drawer controls.
In a specific example, the child controls in the layout container layout are specified in an XML (eXtensible Markup Language) file according to the properties of the drawer controls. In other words, the child controls of the corresponding layout are specified in the XML file for the attributes of handle, content, drag, and drag direction, and the child controls are usually multiple.
S103: and rewriting the drawing view method to calculate the position information of the corresponding sub-control when the drawer control is at a plurality of openings.
If the position information of the sub-control comprises the width and the height of the sub-control, rewriting the drawing method to calculate the position information of the corresponding sub-control of the drawer control at a plurality of opening degrees, including: and respectively calculating the width and height of the sub-control when the drawer control is closed, the width and height of the sub-control when the drawer control is half opened and the width and height of the sub-control when the drawer control is fully opened.
Specifically, the rewrite onMeasure method calculates the width and height of each sub-control when the drawer control is closed and the drawer control is opened halfway and fully in the rewritten onMeasure.
S104: the rewriting layout method is used for performing layout according to the position information of the corresponding sub-control when the drawer control is at a plurality of openings. Namely: and rewriting an onLayout method, and displaying the positions of a handle when the drawer control is closed, the positions of the handle and part of content when the drawer control is half opened and the positions of all the child controls when the drawer control is fully opened according to the height and width of each child control calculated in the onMeasure method.
S105: and displaying corresponding layout according to the opening of the dragging drawer control. Namely: and displaying the dragging animation effect according to the position, the distance and the like dragged by the gesture.
According to the man-machine interface layout method based on the android system, the display layout singleness of the man-machine interface can be avoided, the display layout of the man-machine interface is diversified, accordingly, the diversified requirements of a user on the man-machine interface are met, and the user experience is improved.
As shown in fig. 2, the layout method of a human-computer interface based on an android system according to the embodiment of the present application further includes:
s201: the drawer control is loaded. For example: a drawer control is loaded in a multimedia system.
S202: and judging whether the drawer control is opened by default.
S203: if yes, displaying the corresponding layout according to the default set drawer opening. Namely: and displaying the layout according to the default set opening degree of the drawer control.
Further, still include:
s204: and judging whether the opening of the dragged drawer control is larger than the default set drawer opening. That is, when the user drags the drawer control, it is determined whether the dragged distance is greater than the default dragged distance (i.e., the default drawer opening)
S205: if so, stopping dragging, and opening the drawer to the opening of the drawer dragging control to display the corresponding layout. Namely: after the dragging is stopped, the corresponding layout is displayed by sliding to a specified opening degree (namely, the dragging distance of the user).
S206: if not, stopping dragging, and then recovering to the default set drawer opening degree so as to display the corresponding layout.
FIG. 3A is a schematic diagram of a display interface when the drawer control is closed. After the user drags the drawer control to be opened, as shown in fig. 3B, a display effect of the human-computer interface after the user drags the drawer control to be opened is shown.
According to the man-machine interface layout method based on the android system, the man-machine interface layout method based on the android system has the following advantages:
the self-defined drawer control has the advantages of small coupling degree, small influence on other modules and convenience in transplantation; the opening and closing of the drawer control in any direction can be controlled by setting the attribute of the drawer control; different sizes can be opened arbitrarily by setting the size of the sub-control; in the aspect of human-computer interface layout, the animation effect is increased, and the layout is diversified, so that the user experience is improved; in addition, the user operation is simpler and more flexible, thereby ensuring the driving safety.
Fig. 4 is a block diagram of a vehicle-mounted multimedia system based on an android system according to an embodiment of the present application. As shown in fig. 4, an in-vehicle multimedia system 400 based on the android system according to an embodiment of the present application includes: a control unit 410 and a display unit 420.
The control unit 410 is configured to create a drawer control and define a property of the drawer control, where the drawer control inherits a view group base class, specifies a child control in a layout container according to the property of the drawer control, rewrites a drawing method to calculate position information of the child control corresponding to the drawer control at multiple openings, and rewrites the layout method to perform layout according to the position information of the child control corresponding to the drawer control at multiple openings. The display unit 420 is configured to display a corresponding layout according to the opening degree of the drawer control dragged by the user.
In an embodiment of the present application, the control unit 410 is configured to specify the child controls in the layout container in an XML file according to the attributes of the drawer controls.
In an embodiment of the present application, the position information of the sub-control includes a width and a height of the sub-control, and the control unit 410 is configured to calculate the width and the height of the sub-control when the drawer control is closed, the width and the height of the sub-control when the drawer control is half opened, and the width and the height of the sub-control when the drawer control is fully opened, respectively.
In an embodiment of the application, the control unit 410 is further configured to load the drawer control and determine whether to open the drawer control by default, and the display unit 420 is further configured to display a corresponding layout according to a default drawer opening when the control unit determines to open the drawer control by default.
In an embodiment of the present application, the control unit 410 is further configured to determine whether the opening of the drawer control is larger than the default drawer opening, if so, the drawer is stopped to be dragged, the drawer is opened to the opening of the drawer control to display a corresponding layout through the display unit 420, and if not, the drawer is stopped to be dragged, and then the default drawer opening is restored to display a corresponding layout through the display unit 420.
According to the vehicle-mounted multimedia system based on the android system, the display layout singleness of the human-computer interface can be avoided, the display layout of the human-computer interface is diversified, accordingly, the diversified requirements of a user on the human-computer interface are met, and the user experience is improved.
Further, an embodiment of the present application discloses a vehicle, including: the vehicle-mounted multimedia system based on the android system according to any one of the above embodiments. The human-computer interface on the vehicle has diversified display layout, so that the diversified requirements of a user on the human-computer interface are met, and the user experience of the vehicle is improved.
While embodiments of the present application have been shown and described, it will be understood by those of ordinary skill in the art that: various changes, modifications, substitutions and alterations can be made to the embodiments without departing from the principles and spirit of the application, the scope of which is defined by the claims and their equivalents.

Claims (10)

1. A man-machine interface layout method based on an android system is characterized by comprising the following steps:
creating a drawer control and defining the attribute of the drawer control, wherein the drawer control inherits a view group base class;
appointing a child control in the layout container according to the attribute of the drawer control;
the method for rewriting the drawing view is used for calculating the position information of the corresponding sub-control when the drawer control is at a plurality of opening degrees;
the rewriting layout method is used for performing layout according to the position information of the corresponding sub-control when the drawer control is at a plurality of openings;
and displaying corresponding layout according to the opening degree of the drawer control dragged.
2. The android system-based human-machine interface layout method of claim 1, wherein the specifying of the child controls in the layout container according to the attributes of the drawer control comprises:
and appointing the child controls in the layout container in an XML file according to the attributes of the drawer controls.
3. The android system-based human-computer interface layout method according to claim 1, wherein the position information of the sub-control comprises a width and a height of the sub-control, and the rewriting drawing view method is used for calculating the position information of the corresponding sub-control of the drawer control at multiple openings, and includes:
and respectively calculating the width and the height of the sub-control when the drawer control is closed, the width and the height of the sub-control when the drawer control is half opened and the width and the height of the sub-control when the drawer control is fully opened.
4. The android system-based human-machine interface layout method of any of claims 1-3, further comprising:
loading the drawer control;
judging whether the drawer control is opened by default;
if yes, displaying the corresponding layout according to the default set drawer opening.
5. The android system-based human-machine interface layout method of claim 4, further comprising:
judging whether the opening of dragging the drawer control is larger than the default drawer opening;
if so, stopping dragging, and opening the drawer to the opening of the drawer control dragged to display the corresponding layout;
if not, stopping dragging, and then recovering to the default set drawer opening degree to display the corresponding layout.
6. The utility model provides a vehicle-mounted multimedia system based on tall and erect system of ann, its characterized in that includes:
the control unit is used for creating a drawer control and defining the attribute of the drawer control, wherein the drawer control inherits a view group base class, appoints a sub-control in a layout container according to the attribute of the drawer control, rewrites a drawing method to calculate the position information of the sub-control corresponding to the drawer control at a plurality of opening degrees, rewrites the layout method to perform layout according to the position information of the sub-control corresponding to the drawer control at the plurality of opening degrees;
and the display unit is used for displaying corresponding layout according to the opening degree of the dragged drawer control.
7. The android-based in-vehicle multimedia system of claim 6, wherein the control unit is configured to specify a child control in the layout container in an XML file according to an attribute of the drawer control.
8. The android-system-based vehicle-mounted multimedia system of claim 6, wherein the position information of the sub-control comprises a width and a height of the sub-control, and the control unit is configured to calculate the width and the height of the sub-control when the drawer control is closed, the width and the height of the sub-control when the drawer control is half-opened, and the width and the height of the sub-control when the drawer control is fully opened, respectively.
9. The android-system-based vehicle-mounted multimedia system of any one of claims 6 to 8, wherein the control unit is further configured to load the drawer control and determine whether to open the drawer control by default, the display unit is further configured to display a corresponding layout according to a default drawer opening when the control unit determines that the drawer control is opened by default, and determine whether an opening for dragging the drawer control is greater than the default drawer opening, if so, after dragging is stopped, the drawer is opened to the opening for dragging the drawer control, so that the corresponding layout is displayed through the display unit, and if not, after dragging is stopped, the drawer opening is restored to the default drawer opening, so that the corresponding layout is displayed through the display unit.
10. A vehicle, characterized by comprising: the android based vehicular multimedia system of any of claims 6-9.
CN201910927462.0A 2019-09-27 2019-09-27 Human-computer interface layout method, multimedia system and vehicle Pending CN112579078A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910927462.0A CN112579078A (en) 2019-09-27 2019-09-27 Human-computer interface layout method, multimedia system and vehicle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910927462.0A CN112579078A (en) 2019-09-27 2019-09-27 Human-computer interface layout method, multimedia system and vehicle

Publications (1)

Publication Number Publication Date
CN112579078A true CN112579078A (en) 2021-03-30

Family

ID=75110244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910927462.0A Pending CN112579078A (en) 2019-09-27 2019-09-27 Human-computer interface layout method, multimedia system and vehicle

Country Status (1)

Country Link
CN (1) CN112579078A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377051A (en) * 2013-07-16 2013-10-30 广东欧珀移动通信有限公司 Application interface customizing method based on Android system
CN103631484A (en) * 2012-08-24 2014-03-12 中兴通讯股份有限公司 Interface control position adjusting method, device and terminal
CN104156119A (en) * 2014-08-20 2014-11-19 广东欧珀移动通信有限公司 Touch response method and device for drawer type control
CN104657036A (en) * 2015-01-20 2015-05-27 广东欧珀移动通信有限公司 Method and device for displaying control
CN105373301A (en) * 2014-08-14 2016-03-02 中兴通讯股份有限公司 Control display method, control display apparatus, and terminal
CN108008955A (en) * 2017-12-15 2018-05-08 北京小米移动软件有限公司 Show the method, apparatus of self-defined control information

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103631484A (en) * 2012-08-24 2014-03-12 中兴通讯股份有限公司 Interface control position adjusting method, device and terminal
CN103377051A (en) * 2013-07-16 2013-10-30 广东欧珀移动通信有限公司 Application interface customizing method based on Android system
CN105373301A (en) * 2014-08-14 2016-03-02 中兴通讯股份有限公司 Control display method, control display apparatus, and terminal
CN104156119A (en) * 2014-08-20 2014-11-19 广东欧珀移动通信有限公司 Touch response method and device for drawer type control
CN104657036A (en) * 2015-01-20 2015-05-27 广东欧珀移动通信有限公司 Method and device for displaying control
CN108008955A (en) * 2017-12-15 2018-05-08 北京小米移动软件有限公司 Show the method, apparatus of self-defined control information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
天津滨海迅腾科技集团有限公司: "Android模块化项目实战" *

Similar Documents

Publication Publication Date Title
US10444962B2 (en) Displaying an image on an irregular screen
US8621422B1 (en) Environment for responsive graphical designs
CN108489042B (en) Air conditioner control method, air conditioner, server, and storage medium
CN103513912B (en) A kind of interface switching method and device
CN103116454B (en) A kind of mobile terminal touch screen view layout method of adjustment
CN101957725B (en) Method for managing external equipment of computer
US20140337706A1 (en) Exporting responsive designs from a graphical design tool
CN106780769A (en) It is a kind of to reduce threedimensional model drawing system and method for drafting that close objects are blocked
CN107705616A (en) The display methods and device of empty parking space information in parking lot
CN104750473A (en) Android system based writing superposition method
CN112579078A (en) Human-computer interface layout method, multimedia system and vehicle
CN108052254A (en) A kind of information processing method and electronic equipment
CN103809954B (en) Method and device for realizing interface element selection
EP2463792A1 (en) Method and system for processing and displaying sheet-metal-forming simulation parameters
CN109241564A (en) A kind of Photographing On-line method and apparatus of computer room assets
CN103927186A (en) Method for controlling function key based on Android system
CN101453511A (en) Method for mobile phone platform UI interface adaptation
US7779384B2 (en) Managing visual renderings of typing classes in a model driven development environment
CN104881233B (en) Control method by sliding and device in touch interface
CN109582424A (en) A kind of interface method for closing, system and relevant apparatus
CN117539480A (en) Layout method of view container, electronic device and storage medium
US8478572B2 (en) Method and system for processing and displaying sheet-metal-forming simulation parameters
CN102063256A (en) Method and device for moving/stretching window
CN104346086A (en) Information processing method and electronic equipment
CN108646963B (en) Method for implementing list sliding deletion

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210330

WD01 Invention patent application deemed withdrawn after publication