CN117670379A - Advertisement display method, terminal, server and system - Google Patents

Advertisement display method, terminal, server and system Download PDF

Info

Publication number
CN117670379A
CN117670379A CN202211034416.6A CN202211034416A CN117670379A CN 117670379 A CN117670379 A CN 117670379A CN 202211034416 A CN202211034416 A CN 202211034416A CN 117670379 A CN117670379 A CN 117670379A
Authority
CN
China
Prior art keywords
advertisement
terminal
template
server
application
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
CN202211034416.6A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202211034416.6A priority Critical patent/CN117670379A/en
Priority to PCT/CN2023/111587 priority patent/WO2024041367A1/en
Publication of CN117670379A publication Critical patent/CN117670379A/en
Pending legal-status Critical Current

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/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Abstract

A method, a terminal, a server and a system for advertisement display relate to the technical field of Internet, and can avoid frequent updating of application programs by the terminal due to updating of advertisement layout. The terminal sends a first advertisement request to the server, wherein the first advertisement request is used for requesting a first advertisement corresponding to a first advertisement position in a first application; the server returns the content of the first advertisement and the information of a first advertisement template to the terminal respectively, wherein the first advertisement template is used for indicating the mode of presenting the first advertisement in the first advertisement position; the terminal searches a local template file of the first advertisement template according to the information of the first advertisement template, or requests the template file of the first advertisement template from the server, and displays the first advertisement according to the template file of the first advertisement template.

Description

Advertisement display method, terminal, server and system
Technical Field
The present application relates to the field of internet technologies, and in particular, to a method, a terminal, a server, and a system for advertisement display.
Background
With the widespread use of terminals for mobile phones and tablet computers, built-in advertisement applications of application programs (APP) on the terminals are generated. Currently, an APP needs to integrate a third party's advertisement software development suite (Software development kit, SDK), and then the APP obtains relevant advertisements from an advertisement trading platform through the advertisement SDK and presents the advertisements to a user. However, after the advertisement SDK of the third party issues a new version (for example, updating the layout of the advertisement, etc.), the APP developer needs to update its own application program according to the new version of the advertisement SDK, that is, issues the new version of the APP, and the APP version is updated by the user at the terminal side. Therefore, when the update requirement of the advertisement SDK is more frequent, the APP developer also needs to update the APP version frequently, the user needs to update the APP version on the terminal frequently, and the existing update method of the advertisement SDK is more complicated.
Disclosure of Invention
According to the advertisement display method, the terminal, the server and the system, frequent updating of the application program by the terminal due to updating of advertisement layout can be avoided.
In order to achieve the above purpose, the embodiment of the present application provides the following technical solutions:
in a first aspect, a method of advertisement presentation is provided, the method comprising: the terminal sends a first advertisement request to a first server, wherein the first advertisement request is used for requesting a first advertisement corresponding to a first advertisement position in a first application; after receiving the first advertisement request, the first server acquires the content of the first advertisement and acquires the information of the first advertisement template; and sent to the terminal. The terminal receives the content of the first advertisement returned by the first server and information of a first advertisement template, wherein the first advertisement template is used for indicating a mode of presenting the first advertisement in a first advertisement position; and the terminal downloads the template file of the first advertisement template from the local or from the first server according to the information of the first advertisement template returned by the first server, and displays the first advertisement in a first advertisement position of the first interface according to the template file of the first advertisement template, so that the terminal displays the first interface of the first application, wherein the first interface comprises the first advertisement displayed according to the first advertisement template.
Therefore, according to the advertisement display method provided by the application, the content of the first advertisement is decoupled from the presenting mode of the first advertisement, the first server can match corresponding advertisement templates for the terminal, such as the first advertisement templates, and the terminal presents the advertisement content according to the matched advertisement templates. It is to be appreciated that in some examples, the advertisement SDK is integrated in the first application. And then, the developer of the advertisement SDK can update the finally presented advertisement to the user in a mode of updating the advertisement template, an interactive mode with the user and the like, and the terminal can directly download the updated advertisement template from the first server without updating the advertisement SDK integrated by the terminal or updating the first application of the integrated advertisement SDK. Thus, frequent updating of the application program by the terminal due to updating of the advertisement layout is avoided.
In one possible implementation, before the terminal displays the first interface of the first application, the method further includes: if the terminal does not find the template file corresponding to the first advertisement template locally according to the information of the first advertisement template, requesting the template file of the first advertisement template from the first server; the terminal receives a template file of a first advertisement template returned by a first server; the template file of the first advertisement template includes interface layout and interaction information of the advertisement. Thereby providing an update opportunity for the advertisement template.
In one possible implementation, before the terminal displays the first interface of the first application, the method further includes: the terminal acquires a template file of a corresponding first advertisement template according to the information of the first advertisement template; the terminal checks whether the version of the rendering engine of the terminal meets the preset condition according to the template file of the first advertisement template; if the version of the rendering engine of the terminal does not meet the preset condition, the terminal requests the latest version of the rendering engine from the second server; and the terminal receives the latest version of the rendering engine returned by the second server. Thereby providing an update opportunity for the rendering engine.
In one example, the advertisement SDK of the terminal includes a rendering engine operable to invoke a native rendering system of the terminal to render according to the advertisement template, rendering the received advertisement content. It can be understood that the view of the first advertisement rendered by calling the native rendering system of the terminal can keep consistent with the picture of the original page of the first application, so as to avoid abrupt visual sense of the user and the like caused by inconsistent style, tone and the like of the view of the first advertisement and the original page of the first application. In addition, since the native rendering system has rich interface controls and interface capabilities, the view of the first advertisement rendered by the native rendering system of the calling terminal can have richer interface controls and stronger interface capabilities, for example, the view of the first advertisement can provide richer interface interaction modes, and the view of the first advertisement can have richer visual presentation effects, for example, 3D visual effects and the like.
In one possible implementation, the template file of the first advertisement template includes a preset condition. For example, the preset condition is the minimum version information of the rendering engine required by the first advertisement template.
In one possible implementation, if the version of the rendering engine of the terminal does not meet the preset condition, the terminal requests the latest version of the rendering engine from the second server, including: the first application of the terminal requests to download the latest version of the rendering engine from the second server through mobile service and application market application; the terminal receives the latest version of the rendering engine returned by the second server, and comprises the following steps: after receiving the latest version of the rendering engine returned by the second server, the application market application of the terminal returns the latest version of the rendering engine to the mobile service; the first application of the terminal obtains the latest version of the rendering engine from the mobile service in a dynamic loading mode.
That is, when the function dependency on the native rendering system changes, or the rendering engine needs to be updated due to an update or the like of the specification of the advertisement template (e.g., a defined data structure changes, etc.), the developer of the advertisement SDK may issue a new version of the rendering engine to the application marketplace server, and the terminal may acquire the new version of the rendering engine from the application marketplace server by means of dynamic loading. The terminal does not need to update the whole advertisement SDK and update the APP of the integrated advertisement SDK.
In one possible implementation, the method further includes: when the terminal starts a first application or according to a preset time period, the terminal requests the first server to update the advertisement template; and the terminal receives the template file of the advertisement template returned by the first server to update the template file of the locally stored advertisement template. Thereby providing another timing for updating the advertisement templates.
In one possible implementation, the method further includes: when the terminal starts a first application or according to a preset time period, the terminal checks whether the version of a rendering engine of the terminal is the latest version; and if the version of the rendering engine of the terminal is not the latest version, requesting the latest version of the rendering engine from the application first server. Thereby providing an update opportunity for another rendering engine version.
In one possible implementation, after the terminal displays the first interface of the first application, the method further includes: the terminal uploads the interaction behavior of the user for the first advertisement in the first interface to the first server, and the interaction behavior is used for updating the user portrait corresponding to the terminal by the first server according to the interaction behavior of the user for the first advertisement in the first interface. Thus, a method of updating a user representation is provided whereby a subsequent first server may recommend advertisement templates to respective terminals based on the updated user representation.
It can be understood that in the embodiment of the present application, the first application may match different advertisement templates for different terminals according to the user portrait of the terminal, so that thousands of people and thousands of people can be achieved even for the same advertisement data, and a personalized advertisement presentation effect is provided for the user.
In one possible implementation, before the terminal sends the first advertisement request to the first server, the method further includes: the terminal receives a first indication for displaying a first interface of a first application, wherein the first indication is an indication for starting the first application, and the first interface is a main interface of the first application; alternatively, the first indication is an operation to switch the interface of the first application. Thereby providing a scene for displaying advertisements.
In one possible implementation, the method further includes: the terminal sends a second advertisement request to the first server, wherein the second advertisement request is used for requesting a second advertisement corresponding to the first advertisement position in the first application; the terminal receives the content of the second advertisement returned by the first server and the information of the second advertisement template; wherein the second advertisement template is used for indicating the mode of presenting the content of the second advertisement in the first advertisement position, and the second advertisement template is different from the first advertisement template; the terminal displays a second interface of the first application, wherein the second interface includes a second advertisement displayed according to a second advertisement template. It follows that different advertisement templates may be employed to present advertisements for the same advertisement spot for the same terminal.
In one possible implementation, the first advertisement template or the second broadcast template is a text file. It can be understood that the file of the advertisement template is smaller, the speed of downloading and updating the advertisement template by the terminal is faster, the user does not feel, and the user cannot be disturbed to normally use the first application.
In one possible implementation, the rendering engine is a tool kit package.
In one possible implementation, the first advertisement request includes one or more of information of the terminal, information of the first advertisement slot, information of the first application, information of an advertisement template locally cached by the terminal, version information of a rendering engine of the terminal.
In a second aspect, a method of advertising display is provided, the method comprising: the server receives a first advertisement request sent by a terminal, wherein the first advertisement request is used for requesting a first advertisement corresponding to a first advertisement position in a first application; the server returns the content of the first advertisement and information of a first advertisement template to the terminal, wherein the first advertisement template is used for indicating the mode of presenting the content of the first advertisement in the first advertisement position by the terminal.
In one possible implementation, the first advertisement request includes one or more of information of the terminal, information of the first advertisement slot, information of the first application, information of an advertisement template locally cached by the terminal, version information of a rendering engine of the terminal.
In one possible implementation, the server determines the information of the first advertisement template according to the user portrait corresponding to the information of the terminal in the first advertisement request.
In one possible implementation, the server receives an input event for content of a first advertisement, wherein the content of the first advertisement includes one or more of a commodity name, a commodity price, picture information, video information.
In one possible implementation, the method further includes: the server receives a second advertisement request sent by the terminal, wherein the second advertisement request is used for requesting a second advertisement corresponding to a first advertisement position in the first application; the server returns the content of the second advertisement and the information of a second advertisement template to the terminal, wherein the second advertisement template is used for indicating the mode of the terminal for presenting the content of the first advertisement in the first advertisement position; wherein the second advertisement template is different from the first advertisement template.
In a third aspect, a terminal is provided, including: a processor, a memory, and a display screen, the memory, the display screen being coupled to the processor, the memory being for storing computer program code, the computer program code comprising computer instructions which, when read from the memory by the processor, cause the terminal to perform the method as described in any one of the possible implementations of the first aspect.
A fourth aspect provides a server, comprising: a processor, a memory, and a communication interface, the memory being coupled to the processor, the memory being for storing computer program code, the computer program code comprising computer instructions which, when read from the memory by the processor, cause the server to perform the method as described in any one of the possible implementations of the second aspect described above.
A fifth aspect provides an apparatus, the apparatus being embodied in a terminal or a server, the apparatus having functionality to implement the terminal or server behaviour in any of the methods of the above aspects and possible implementations. The functions can be realized by hardware, and can also be realized by executing corresponding software by hardware. The hardware or software includes at least one module or unit corresponding to the functions described above. Such as a receiving module or unit, a transmitting module or unit, a processing module or unit, etc. Optionally, a display module or unit may also be included.
In a sixth aspect, there is provided a computer readable storage medium comprising computer instructions which, when run on a terminal, cause the terminal to perform the method as described in the first aspect and any one of the possible implementations.
A seventh aspect provides a computer readable storage medium comprising computer instructions which, when run on a server, cause the server to perform a method as described in the second aspect and any one of the possible implementations.
An eighth aspect provides a computer program product which, when run on a computer, causes the computer to perform the method as described in any one of the possible implementations of the above aspects.
A ninth aspect provides a system on a chip comprising a processor which, when executing instructions, performs the method as described in any one of the possible implementations of the above aspects.
The technical effects achieved by the method on the server side provided by the second aspect, the terminal provided by the third aspect, the server provided by the fourth aspect, the apparatus provided by the fifth aspect, the computer readable storage medium provided by the sixth aspect, the computer readable storage medium provided by the seventh aspect, the computer program product provided by the eighth aspect, and the chip system provided by the ninth aspect described above may be referred to for description of the technical effects in any one of the possible implementation manners of the first aspect and the description thereof will not be repeated here.
Drawings
FIG. 1A is a schematic diagram of a system architecture according to an embodiment of the present disclosure;
FIG. 1B is a schematic diagram of an advertisement display method according to an embodiment of the present disclosure;
FIG. 1C is a schematic diagram of another advertisement display method according to an embodiment of the present application;
fig. 2 is a schematic structural diagram of a terminal according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of another terminal according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of an APP according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a server according to an embodiment of the present application;
FIG. 6 is a flowchart of an advertisement display method according to an embodiment of the present disclosure;
FIG. 7 is a flowchart illustrating another advertisement display method according to an embodiment of the present disclosure;
fig. 8 is a schematic structural diagram of a chip system according to an embodiment of the present application.
Detailed Description
In the description of the embodiments of the present application, unless otherwise indicated, "/" means or, for example, a/B may represent a or B; "and/or" herein is merely an association relationship describing an association object, and means that three relationships may exist, for example, a and/or B may mean: a exists alone, A and B exist together, and B exists alone.
The terms "first" and "second" are used below for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more such feature. In the description of the embodiments of the present application, unless otherwise indicated, the meaning of "a plurality" is two or more.
In the embodiments of the present application, words such as "exemplary" or "such as" are used to mean serving as examples, illustrations, or descriptions. Any embodiment or design described herein as "exemplary" or "for example" should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.
As shown in fig. 1A, an architecture diagram of an advertisement display system according to an embodiment of the present application includes a terminal 100, an advertisement exchange (ADX) Platform 200 (also referred to as an advertisement exchange server 200), a service Platform (SSP) 300 (also referred to as a service server 300), a demand Platform (demand Side Platform, DSP) 400 (also referred to as a capacity-to-me demand server 400), and an application marketplace server 500. It should be noted that, the platform or the server shown in fig. 1A may be one or more servers, where some of the platforms or the servers may be integrated together, or some of the platforms or the servers may be split into a plurality of servers, etc., which is not specifically limited in this embodiment of the present application. In one example, the ADX platform 200 and SSP300 can be the same facilitator; alternatively, the ADX platform 200, SSP300, and DSP400 may be the same facilitator; alternatively, SSP300 and DSP400 are different vendors.
Wherein, ADX200 is used for providing advertisement transaction function.
SSP300, including an advertisement template repository for managing a large number of advertisement templates, may include functions such as creation, storage, and downloading of advertisement templates. The advertisement templates comprise the interface layout of advertisement views, interaction information (such as interaction modes with users, etc.), dynamic effects, etc. In other words, the advertisement templates indicate how the advertisement was last presented to the user, as well as the manner of interaction with the user, etc., i.e., the presentation effect of the advertisement view. It will be appreciated that in a real usage scenario, the update requirements of a large number of SDKs may be achieved by updating the advertisement templates. Then, the developer of the advertisement SDK or other developer may upload the updated advertisement templates to the advertisement template repository of the SSP300 for download and use by the terminal 100. Optionally, the SSP300 further includes a recommendation algorithm model operable to match, i.e., recommend, a template to an advertisement requester for the advertisement requester based on information (e.g., information of APP, user portraits, etc.) of the advertisement requester (e.g., terminal 100).
The DSP400 provides a management platform for advertisers and agents, and manages a large amount of advertisement resources through a unified interface, for example, provides functions of creating advertisements, putting advertisements, and the like. For example, as shown in FIG. 1B (1), an interface diagram for an advertiser or agent to log into an advertising exchange to deliver advertisements is shown. The advertiser or agent enters the content of a particular advertisement in the interface: the advertisement data such as the text information (such as name and price), the picture information (such as picture address), the jump address, the oriented delivery strategy, the delivery position of the advertisement and the like of the commodity. Here, the advertisement data input by the advertiser or the agent includes advertisement content, delivery rules (such as a targeted delivery policy, etc.), and the like, and does not define how the advertisement is finally presented to the user. Subsequently, the SSP300 matches the advertisement requester with a corresponding advertisement template based on the advertisement requester's information (e.g., APP's information, user portraits, etc.). For example, the SSP300 matches the advertisement requester 1 with the advertisement template 1 shown in (2) in fig. 1B, wherein the text information of the commodity is above and the picture information is below in the advertisement view corresponding to the advertisement template 1. The SSP300 matches the advertisement requester 2 with the advertisement template 2 as shown in (3) of fig. 1B, and in the advertisement view corresponding to the advertisement template 2, the picture information of the commodity is located on the left side, and the text information is located on the right side. It follows that, for the same advertisement, SSP300 may match different advertisement templates for different advertisement requesters, and that the interface layout of the advertisement views presented by different advertisement requesters for the same advertisement is different.
For another example, as shown in FIG. 1C (1), another interface diagram for an advertiser or agent to log into an advertising exchange to place an advertisement. Wherein an advertiser or agent may enter a collection of resources, such as picture addresses, video addresses, and moving picture addresses, for delivering advertisements. The other contents are the same as the previous example. Subsequently, the SSP300 matches the advertisement requester with a corresponding advertisement template based on the advertisement requester's information (e.g., APP's information, user portraits, etc.). For example, the SSP300 matches the advertisement requester 1 with the advertisement template 3 as shown in (2) of fig. 1C, and the advertisement view corresponding to the advertisement template 3 includes text information and pictures of the commodity. The SSP300 matches the advertisement requester 2 with the advertisement template 4 as shown in (3) of fig. 1C, and the advertisement view corresponding to the advertisement template 4 includes text information and video of the commodity. The SSP300 matches the advertisement requester 3 with the advertisement template 5 as shown in (4) of fig. 1C, and the advertisement view corresponding to the advertisement template 5 includes text information and a moving picture of the commodity. It follows that, for the same advertisement, SSP300 may match different advertisement templates for different advertisement requesters, and that different advertisement requesters may include different interface elements for advertisement views presented by the same advertisement.
The terminal 100 has installed thereon an APP integrated with an advertisement SDK, which may request an advertisement from the advertisement trading platform 200 through the advertisement SDK. In the embodiment of the present application, the advertisement trading platform 200 may obtain corresponding advertisement data from the DSP400 and match the advertisement templates corresponding to the terminal 100 from the SSP300 according to the request. The advertisement trading platform 200 returns advertisement data and recommended advertisement templates to the terminal 100. The terminal 100 presents advertisement data in the form of advertisement views according to the recommended advertisement template information. In some embodiments, the advertising SDK of the terminal 100 includes a rendering engine operable to invoke a native rendering system of the terminal 100 to render according to an advertising template, rendering the received advertising data. It can be appreciated that, by invoking the advertisement view rendered by the native rendering system of the terminal 100, the picture of the original page of the APP can be kept consistent, and the advertisement view and the original page of the APP are prevented from being visually abrupt by a user due to inconsistent style, tone, etc. In addition, since the native rendering system has rich interface controls and interface capabilities, the advertisement view rendered by the native rendering system of the call terminal 100 can have richer interface controls and more powerful interface capabilities, for example, the advertisement view can provide richer interface interaction modes, and the advertisement view can have richer visual presentation effects, for example, 3D visual effects, and the like. In other embodiments, if the terminal 100 does not store the recommended template, the advertisement SDK of the terminal 100 may first request the recommended template from the SSP 300.
It should be noted that the "rendering engine" herein is a name provided by the present application for convenience of description of the solution, and in some examples, should not be taken as a functional limitation of the solution of the present application.
In other embodiments, when the rendering engine needs to be updated due to a change in functional dependency on the native rendering system, or due to an update in the specification of the advertisement template (e.g., a change in a defined data structure, etc.), the developer of the advertisement SDK may issue a new version of the rendering engine to the application marketplace server 500, and the terminal 100 may obtain the new version of the rendering engine from the application marketplace server 500 by means of dynamic loading. The terminal 100 does not need to update the entire advertisement SDK nor update the APP of the integrated advertisement SDK.
It can be seen that in the embodiment of the present application, the advertisement data and the advertisement templates are decoupled, and the corresponding advertisement templates are matched for the advertisement requester (e.g., the terminal 100), and the terminal 100 finally presents the advertisement data according to the recommended advertisement templates, i.e., draws the advertisement view. It will be appreciated that in some examples, the developer of the advertisement SDK may update the advertisement template to be presented to the user and interact with the user, and so on, and then the terminal 100 may directly download the updated advertisement template from the SSP300 without updating the advertisement SDK therein or updating the APP of the integrated advertisement SDK. Optionally, the terminal 100 may obtain a new version of the rendering engine from the application market by dynamically loading, and still need not update the entire advertisement SDK, or update the APP of the integrated advertisement SDK.
In summary, the update method of the advertisement SDK provided in the embodiment of the present application does not require the terminal 100 to update the APP of the integrated advertisement SDK.
In addition, in the embodiment of the present application, the SSP300 may match different advertisement templates for different advertisement requesters according to related information of the advertisement requesters (for example, APP of the advertisement requester, user portrait of the advertisement requester, etc.), so that even for the same advertisement data, thousands of people and thousands of people can be achieved, and personalized advertisement presentation effect is provided for the user.
For example, the terminal 100 in the embodiment of the present application may be, for example, a mobile phone, a tablet computer, a personal computer (personal computer, PC), a personal digital assistant (personal digital assistant, PDA), a smart watch, a netbook, a wearable terminal, an augmented reality (augmented reality, AR) device, a Virtual Reality (VR) device, a vehicle-mounted device, a smart screen, a smart car, a smart sound, etc., and the specific form of the terminal 100 is not limited in this application.
Fig. 2 shows a schematic structure of the terminal 100.
The terminal 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (universal serial bus, USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, keys 190, a motor 191, an indicator 192, a camera 193, a display 194, and a subscriber identity module (subscriber identification module, SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyro sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
It should be understood that the structure illustrated in the embodiments of the present invention does not constitute a specific limitation on the terminal 100. In other embodiments of the present application, terminal 100 may include more or less components than illustrated, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
The processor 110 may include one or more processing units, such as: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), a controller, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, and/or a neural network processor (neural-network processing unit, NPU), etc. Wherein the different processing units may be separate devices or may be integrated in one or more processors.
The controller can generate operation control signals according to the instruction operation codes and the time sequence signals to finish the control of instruction fetching and instruction execution.
A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to reuse the instruction or data, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby improving the efficiency of the system.
In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous receiver transmitter (universal asynchronous receiver/transmitter, UART) interface, a mobile industry processor interface (mobile industry processor interface, MIPI), a general-purpose input/output (GPIO) interface, a subscriber identity module (subscriber identity module, SIM) interface, and/or a universal serial bus (universal serial bus, USB) interface, among others.
It should be understood that the interfacing relationship between the modules illustrated in the embodiment of the present invention is only illustrative, and does not limit the structure of the terminal 100. In other embodiments of the present application, the terminal 100 may also use different interfacing manners, or a combination of multiple interfacing manners in the foregoing embodiments.
The charge management module 140 is configured to receive a charge input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charge management module 140 may receive a charging input of a wired charger through the USB interface 130. In some wireless charging embodiments, the charge management module 140 may receive wireless charging input through a wireless charging coil of the terminal 100. The charging management module 140 may also supply power to the terminal through the power management module 141 while charging the battery 142.
The power management module 141 is used for connecting the battery 142, and the charge management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and/or the charge management module 140 to power the processor 110, the internal memory 121, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 may also be configured to monitor battery capacity, battery cycle number, battery health (leakage, impedance) and other parameters. In other embodiments, the power management module 141 may also be provided in the processor 110. In other embodiments, the power management module 141 and the charge management module 140 may be disposed in the same device.
The wireless communication function of the terminal 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in terminal 100 may be configured to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed into a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 150 may provide a solution including 2G/3G/4G/5G wireless communication applied to the terminal 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA), etc. The mobile communication module 150 may receive electromagnetic waves from the antenna 1, perform processes such as filtering, amplifying, and the like on the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can amplify the signal modulated by the modem processor, and convert the signal into electromagnetic waves through the antenna 1 to radiate. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be disposed in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be provided in the same device as at least some of the modules of the processor 110.
The modem processor may include a modulator and a demodulator. The modulator is used for modulating the low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used for demodulating the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low frequency baseband signal to the baseband processor for processing. The low frequency baseband signal is processed by the baseband processor and then transferred to the application processor. The application processor outputs sound signals through an audio device (not limited to the speaker 170A, the receiver 170B, etc.), or displays images or video through the display screen 194. In some embodiments, the modem processor may be a stand-alone device. In other embodiments, the modem processor may be provided in the same device as the mobile communication module 150 or other functional module, independent of the processor 110.
The wireless communication module 160 may provide solutions for wireless communication including wireless local area network (wireless local area networks, WLAN) (e.g., wireless fidelity (wireless fidelity, wi-Fi) network), bluetooth (BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field wireless communication technology (near field communication, NFC), infrared technology (IR), etc., applied on the terminal 100. The wireless communication module 160 may be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates the electromagnetic wave signals, filters the electromagnetic wave signals, and transmits the processed signals to the processor 110. The wireless communication module 160 may also receive a signal to be transmitted from the processor 110, frequency modulate it, amplify it, and convert it to electromagnetic waves for radiation via the antenna 2.
In some embodiments, antenna 1 and mobile communication module 150 of terminal 100 are coupled, and antenna 2 and wireless communication module 160 are coupled, such that terminal 100 may communicate with a network and other devices via wireless communication techniques. The wireless communication techniques may include the Global System for Mobile communications (global system for mobile communications, GSM), general packet radio service (general packet radio service, GPRS), code division multiple access (code division multiple access, CDMA), wideband code division multiple access (wideband code division multiple access, WCDMA), time division code division multiple access (time-division code division multiple access, TD-SCDMA), long term evolution (long term evolution, LTE), BT, GNSS, WLAN, NFC, FM, and/or IR techniques, among others. The GNSS may include a global satellite positioning system (global positioning system, GPS), a global navigation satellite system (global navigation satellite system, GLONASS), a beidou satellite navigation system (beidou navigation satellite system, BDS), a quasi zenith satellite system (quasi-zenith satellite system, QZSS) and/or a satellite based augmentation system (satellite based augmentation systems, SBAS).
Terminal 100 implements display functions via a GPU, display 194, and application processor, etc. The GPU is a microprocessor for image processing, and is connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
The display screen 194 is used to display images, videos, and the like. The display 194 includes a display panel. The display panel may employ a liquid crystal display (liquid crystal display, LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED) or an active-matrix organic light-emitting diode (matrix organic light emitting diode), a flexible light-emitting diode (flex), a mini, a Micro led, a Micro-OLED, a quantum dot light-emitting diode (quantum dot light emitting diodes, QLED), or the like. In some embodiments, the terminal 100 may include 1 or N display screens 194, N being a positive integer greater than 1.
The terminal 100 may implement photographing functions through an ISP, a camera 193, a video codec, a GPU, a display 194, an application processor, and the like.
The ISP is used to process data fed back by the camera 193. For example, when photographing, the shutter is opened, light is transmitted to the camera photosensitive element through the lens, the optical signal is converted into an electric signal, and the camera photosensitive element transmits the electric signal to the ISP for processing and is converted into an image visible to naked eyes. ISP can also optimize the noise, brightness and skin color of the image. The ISP can also optimize parameters such as exposure, color temperature and the like of a shooting scene. In some embodiments, the ISP may be provided in the camera 193.
The camera 193 is used to capture still images or video. The object generates an optical image through the lens and projects the optical image onto the photosensitive element. The photosensitive element may be a charge coupled device (charge coupled device, CCD) or a Complementary Metal Oxide Semiconductor (CMOS) phototransistor. The photosensitive element converts the optical signal into an electrical signal, which is then transferred to the ISP to be converted into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, terminal 100 may include 1 or N cameras 193, N being a positive integer greater than 1.
The digital signal processor is used for processing digital signals, and can process other digital signals besides digital image signals. For example, when the terminal 100 selects a frequency bin, the digital signal processor is used to fourier transform the frequency bin energy, etc.
Video codecs are used to compress or decompress digital video. The terminal 100 may support one or more video codecs. In this way, the terminal 100 may play or record video in a variety of encoding formats, such as: dynamic picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
The NPU is a neural-network (NN) computing processor, and can rapidly process input information by referencing a biological neural network structure, for example, referencing a transmission mode between human brain neurons, and can also continuously perform self-learning. Applications such as intelligent cognition of the terminal 100 can be implemented by the NPU, for example: image recognition, face recognition, speech recognition, text understanding, etc.
The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to realize the memory capability of the extension terminal 100. The external memory card communicates with the processor 110 through an external memory interface 120 to implement data storage functions. For example, files such as music, video, etc. are stored in an external memory card.
The internal memory 121 may be used to store computer executable program code including instructions. The internal memory 121 may include a storage program area and a storage data area. The storage program area may store an application program (such as a sound playing function, an image playing function, etc.) required for at least one function of the operating system, etc. The storage data area may store data (e.g., audio data, phonebook, etc.) created during use of the terminal 100, and the like. In addition, the internal memory 121 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (universal flash storage, UFS), and the like. The processor 110 performs various functional applications of the terminal 100 and data processing by executing instructions stored in the internal memory 121 and/or instructions stored in a memory provided in the processor.
The terminal 100 may implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. Such as music playing, recording, etc.
The audio module 170 is used to convert digital audio information into an analog audio signal output and also to convert an analog audio input into a digital audio signal. The audio module 170 may also be used to encode and decode audio signals. In some embodiments, the audio module 170 may be disposed in the processor 110, or a portion of the functional modules of the audio module 170 may be disposed in the processor 110.
The speaker 170A, also referred to as a "horn," is used to convert audio electrical signals into sound signals. The terminal 100 can listen to music or to handsfree calls through the speaker 170A.
A receiver 170B, also referred to as a "earpiece", is used to convert the audio electrical signal into a sound signal. When the terminal 100 receives a telephone call or voice message, it is possible to receive voice by approaching the receiver 170B to the human ear.
Microphone 170C, also referred to as a "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or transmitting voice information, the user can sound near the microphone 170C through the mouth, inputting a sound signal to the microphone 170C. The terminal 100 may be provided with at least one microphone 170C. In other embodiments, the terminal 100 may be provided with two microphones 170C, and may implement a noise reduction function in addition to collecting sound signals. In other embodiments, the terminal 100 may be further provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify the source of sound, implement directional recording functions, etc.
The earphone interface 170D is used to connect a wired earphone. The earphone interface 170D may be a USB interface 130 or a 3.5mm open mobile terminal platform (open mobile terminal platform, OMTP) standard interface, a american cellular telecommunications industry association (cellular telecommunications industry association of the USA, CTIA) standard interface.
The keys 190 include a power-on key, a volume key, etc. The keys 190 may be mechanical keys. Or may be a touch key. The terminal 100 may receive key inputs, generating key signal inputs related to user settings and function controls of the terminal 100.
The motor 191 may generate a vibration cue. The motor 191 may be used for incoming call vibration alerting as well as for touch vibration feedback. For example, touch operations acting on different applications (e.g., photographing, audio playing, etc.) may correspond to different vibration feedback effects. The motor 191 may also correspond to different vibration feedback effects by touching different areas of the display screen 194. Different application scenarios (such as time reminding, receiving information, alarm clock, game, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect may also support customization.
The indicator 192 may be an indicator light, may be used to indicate a state of charge, a change in charge, a message indicating a missed call, a notification, etc.
The SIM card interface 195 is used to connect a SIM card. The SIM card may be contacted and separated from the terminal 100 by being inserted into the SIM card interface 195 or by being withdrawn from the SIM card interface 195. The terminal 100 may support 1 or N SIM card interfaces, N being a positive integer greater than 1. The SIM card interface 195 may support Nano SIM cards, micro SIM cards, and the like. The same SIM card interface 195 may be used to insert multiple cards simultaneously. The types of the plurality of cards may be the same or different. The SIM card interface 195 may also be compatible with different types of SIM cards. The SIM card interface 195 may also be compatible with external memory cards. The terminal 100 interacts with the network through the SIM card to realize functions such as call and data communication. In some embodiments, the terminal 100 employs esims, i.e.: an embedded SIM card. The eSIM card may be embedded in the terminal 100 and cannot be separated from the terminal 100.
The software system of the terminal 100 may employ a layered architecture, an event driven architecture, a micro-core architecture, a micro-service architecture, or a cloud architecture. In the embodiment of the invention, taking an Android system with a layered architecture as an example, a software structure of the terminal 100 is illustrated.
Fig. 3 is a software configuration block diagram of the terminal 100 according to the embodiment of the present invention.
The layered architecture divides the software into several layers, each with distinct roles and branches. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into four layers, from top to bottom, an application layer, an application framework layer, an Zhuoyun row (Android run) and system libraries, and a kernel layer, respectively.
The application layer may include a series of application packages.
As shown in fig. 3, the application package may include applications for cameras, gallery, calendar, phone calls, maps, navigation, WLAN, bluetooth, music, video, short messages, etc.
In the embodiment of the application, the application program layer comprises a first APP, the first APP comprises an advertisement SDK, and the first APP obtains advertisements or presents advertisements through the advertisement SDK. The first APP may be, for example, a video APP, a news APP, a game APP, a social APP, a music APP, etc.
Fig. 4 is a schematic structural diagram of a first APP according to an embodiment of the present application. The first APP includes an advertisement SDK and service functions of the first APP (e.g., video play functions of a video APP, news browsing functions of a news APP, game functions of a game APP, etc.). The advertisement SDK comprises an advertisement service module, a dynamic loading module, a template management module and a rendering engine. The advertisement service module includes advertisement service logic, such as requesting advertisement from the ADX platform 200, receiving advertisement data returned by the ADX platform 200 and recommended template information, etc. The dynamic loading module is used for dynamically loading the new version of the rendering engine by the advertisement SDK. And a template management module for downloading the advertisement module from the SSP300, managing the downloaded advertisement template, and the like. The rendering engine is used for analyzing the advertisement template received by the advertisement service module into interface description and interaction information corresponding to the native rendering system of the terminal 100, and calling the native rendering system of the terminal 100 to draw advertisement views; and analyzing the advertisement data received by the advertisement service module, filling the corresponding data into corresponding positions in the advertisement view according to the data structure defined in the advertisement template, and generating a final advertisement view presented to the user and the like.
In some examples, the application layer also includes a mobile service, such as a Hua mobile service (HUAWEI mobile service, HMS) core service, for retrieving the latest version of the rendering engine in the advertisement SDK from the application marketplace APP (not shown in FIG. 3). The dynamic loading module in the advertisement SDK may dynamically load the latest version of code of the rendering engine through the mobile service. Thus, when the rendering engine is updated, the terminal 100 can obtain the latest version of the rendering engine without updating the first APP, and use the latest function of the rendering engine.
The application framework layer provides an application programming interface (application programming interface, API) and programming framework for application programs of the application layer. The application framework layer includes a number of predefined functions.
As shown in FIG. 3, the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.
The window manager is used for managing window programs. The window manager can acquire the size of the display screen, judge whether a status bar exists, lock the screen, intercept the screen and the like.
The content provider is used to store and retrieve data and make such data accessible to applications. The data may include video, images, audio, calls made and received, browsing history and bookmarks, phonebooks, etc.
The view system includes visual controls, such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, a display interface including a text message notification icon may include a view displaying text and a view displaying a picture.
The telephony manager is used to provide the communication functions of the terminal 100. Such as the management of call status (including on, hung-up, etc.).
The resource manager provides various resources for the application program, such as localization strings, icons, pictures, layout files, video files, and the like.
The notification manager allows the application to display notification information in a status bar, can be used to communicate notification type messages, can automatically disappear after a short dwell, and does not require user interaction. Such as notification manager is used to inform that the download is complete, message alerts, etc. The notification manager may also be a notification in the form of a chart or scroll bar text that appears on the system top status bar, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialog window. For example, a text message is prompted in a status bar, a prompt tone is emitted, the terminal vibrates, and an indicator light blinks.
Android run time includes a core library and virtual machines. Android run time is responsible for scheduling and management of the Android system.
The core library consists of two parts: one part is a function which needs to be called by java language, and the other part is a core library of android.
The application layer and the application framework layer run in a virtual machine. The virtual machine executes java files of the application program layer and the application program framework layer as binary files. The virtual machine is used for executing the functions of object life cycle management, stack management, thread management, security and exception management, garbage collection and the like.
The system library may include a plurality of functional modules. For example: surface manager (surface manager), media Libraries (Media Libraries), three-dimensional graphics processing Libraries (e.g., openGL ES), 2D graphics engines (e.g., SGL), etc.
The surface manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
Media libraries support a variety of commonly used audio, video format playback and recording, still image files, and the like. The media library may support a variety of audio and video encoding formats, such as MPEG4, h.264, MP3, AAC, AMR, JPG, PNG, etc.
The three-dimensional graphic processing library is used for realizing three-dimensional graphic drawing, image rendering, synthesis, layer processing and the like.
The 2D graphics engine is a drawing engine for 2D drawing.
The kernel layer is a layer between hardware and software. The inner core layer at least comprises a display driver, a camera driver, an audio driver and a sensor driver.
FIG. 5 is a schematic diagram of an SSP300 according to an embodiment of the present application. The SSP300 includes at least one processor 210, at least one memory 220, at least one communication interface 230. Optionally, the SSP300 may also include output devices and input devices, not shown.
The processor 210, the memory 220 and the communication interface 230 are connected by a bus. Processor 210 may be a general purpose central processing unit (central processing unit, CPU), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of programs in accordance with aspects of the present application. Processor 210 may also include multiple CPUs, and processor 210 may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. A processor herein may refer to one or more devices, circuits, or processing cores for processing data (e.g., computer program instructions).
The memory 220 may be, but is not limited to, a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (random access memory, RAM) or other type of dynamic storage device that can store information and instructions, or an electrically erasable programmable read-only memory (electrically erasable programmable read-only memory, EEPROM), a compact disc read-only memory (compact disc read-only memory) or other optical disk storage, optical disk storage (including compact disc, laser disc, optical disc, digital versatile disc, blu-ray disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. The memory 220 may be stand alone and coupled to the processor 210 via a bus. Memory 220 may also be integrated with processor 210. The memory 220 is used for storing application program codes for executing the embodiments of the present application, and the processor 210 controls the execution.
In some embodiments, the memory 220 of the SSP300 can be used to store a number of advertisement templates. Alternatively, the SSP300 may also be used to store a recommendation algorithm model of an advertisement template, or the like.
Communication interface 230 may be used to communicate with other devices or communication networks such as ethernet, wireless local area network (wireless local area networks, WLAN), etc.
In the embodiment of the present application, the SSP300 may interact with the terminal 100 through the communication interface 230, for example, to send advertisement templates, etc., to the terminal 100. Optionally, the SSP300 may also receive advertisement templates made or uploaded by the advertisement SDK developer or other developers through the communication interface 230. Optionally, the SSP300 may also receive algorithms or the like of the advertisement templates uploaded by the advertisement SDK developer or other developer through the communication interface 230. Optionally, the SSP300 may also receive via the communication interface 230 a setting of the advertisement template type, etc. by the developer of the first APP.
The output device communicates with the processor and can display information in a variety of ways. For example, the output device may be a liquid crystal display (liquid crystal display, LCD), a light emitting diode (light emitting diode, LED) display device, a Cathode Ray Tube (CRT) display device, or a projector (projector), or the like. The input device is in communication with the processor and may receive user input in a variety of ways. For example, the input device may be a mouse, a keyboard, a touch screen device, a sensing device, or the like.
It should be further noted that the ADX platform 200, DSP400, and application marketplace server 500 shown in fig. 1A may all refer to the SSP300 shown in fig. 5. It will be appreciated that the architecture of the ADX platform 200, DSP400, and application marketplace server 500 may have more or fewer components than SSP300 in FIG. 3, or may combine certain components, or split certain components, or may have a different arrangement of components. The architecture of the SSP300, ADX platform 200, DSP400, and application marketplace server 500 is not particularly limited in this application.
The technical scheme provided by the embodiment of the application is described in detail below by taking the first APP integrated advertisement SDK as an example and combining the attached drawings.
After a developer of the advertisement SDK develops the advertisement SDK, the advertisement SDK includes a rendering engine and the like. Optionally, the advertisement SDK may also include various advertisement templates of the initial design. When developing the first APP, a developer of the first APP integrates the advertisement SDK, then puts the developed first APP on the application market, and then the terminal 100 may download and install the first APP through the application market, or preset the first APP to the terminal 100 by a manufacturer of the terminal 100.
Optionally, the developer of the ad SDK also uploads the designed individual ad templates into the ad template repository of SSP 300. Optionally, the advertising SDK puts the latest version of the rendering engine on-line to the application marketplace.
In some embodiments, when a developer of the advertisement SDK updates an advertisement template, a new advertisement template may be created by the SSP300 or the created advertisement template may be uploaded into the advertisement template repository of the SSP 300. The SSP300 may periodically push updated advertisement templates to the first APP of the terminal 100, e.g., the SSP300 periodically sends update notifications to the first APP of the terminal 100, which are updated manually by the user. Alternatively, the advertisement template is automatically updated after the terminal 100 starts the first APP. Alternatively, the first APP of the terminal 100 may actively request an updated advertisement template or the like from the SSP 300. For example, after starting the first APP, the terminal 100 actively requests an updated advertisement template from the SSP 300. For another example, when it is determined that there is no recommended template locally upon receiving the advertisement data and the recommended template information returned from the ADX platform 200 after the terminal 100 transmits the advertisement request, the updated advertisement template is actively requested to the SSP300 to acquire the recommended template. In summary, the embodiment of the present application does not specifically limit the timing of updating the advertisement template by the first APP of the terminal 100.
It follows that when the developer of the advertisement SDK updates the advertisement template, the developer of the first APP need not update the version of the APP. The terminal 100 does not need to update the first APP either. In some examples, the user does not feel during the process of updating the advertisement template by the terminal 100, so that the user is prevented from being disturbed, and the use experience of the user is improved.
In another embodiment, when a developer of the advertisement SDK needs to update the rendering engine in the advertisement SDK, a new version of the rendering engine may be put on the application marketplace. In one example, a developer may put a new version of a rendering engine on top of an application market in the form of a tool (kit) package. The advertisement SDK of the terminal 100 may acquire a new version of the rendering engine from the application marketplace in a dynamic loading manner. In this way, the terminal 100 can use the new function of the new version rendering engine without updating the entire SDK or the first APP. In one particular implementation, the advertisement SDK may implement a rendering engine that dynamically loads new versions through a system service-mobile service of the terminal 100. For example, the mobile service of the terminal 100 periodically interacts with the application marketplace APP to check whether the version number of the local rendering engine is the latest version. When the version number of the local rendering engine is not the latest version, the terminal 100 automatically acquires the latest version of the rendering engine from the server 500 of the application market through the application market APP. When the first APP is started, the advertisement SDK may check with the mobile service whether the version number of the rendering engine in the advertisement SDK is the latest version. When the version number of the rendering engine in the advertisement SDK is not the latest version, the advertisement SDK acquires the rendering engine of the latest version from the mobile service. In other implementations, the advertisement SDK may also automatically obtain the latest version of the rendering engine from the application marketplace's server 500 through the application marketplace APP. The implementation of the rendering engine for dynamically loading the latest version of the advertisement SDK is not particularly limited.
It can be understood that, whether the advertisement SDK updates the advertisement template or dynamically loads the rendering engine of the new version, the overall update efficiency is higher than that of the terminal 100 in the prior art for updating the first APP, so that the update efficiency is greatly improved by the advertisement SDK update method provided by the embodiment of the present application.
In addition, in a real usage scenario, a large number of update requirements for the SDK may be achieved by updating the advertisement templates and/or updating the rendering engine. When the advertisement SDK has frequent update demands, the update method of the advertisement SDK provided by the embodiment of the application does not need to update the whole advertisement SDK or update the first APP, so that the update flow of the advertisement SDK is greatly simplified, and the update efficiency is improved.
As shown in fig. 6, a flowchart of a method for displaying an advertisement according to an embodiment of the present application is provided, where the method includes:
s601, the terminal 100 transmits an advertisement request to the ADX platform 200. Wherein the advertisement request includes one or more of ad slot information (e.g., ad slot identification), information of the first APP, and information of the terminal 100.
Wherein the ad spot information includes ad spot identification and/or ad spot type, etc. The information of the first APP includes one or more of a packet name, version number, signature, etc. of the first APP. The information of the terminal 100 includes one or more of an open anonymous device identifier (Open Anonymous Device Identifier, OAID), a model, a system version number, a device capability, etc. of the terminal 100.
In some embodiments, after the terminal 100 starts the first APP, the main page of the first APP is displayed, and when the main page of the first APP includes an area location where the advertisement is shown (i.e., an advertisement slot), the first APP sends an advertisement request to the ADX platform 200 through its integrated advertisement SDK. The advertisement request carries advertisement space information, such as advertisement space identification and the like. Alternatively, when the terminal 100 automatically jumps to other pages of the first APP, including advertisement slots, according to the user's operation, the first APP transmits an advertisement request to the ADX platform 200 through its integrated advertisement SDK. The operations of the user include, for example, an operation of dragging a page performed during the process of browsing a news page or a web page by using the terminal 100, an operation of pausing playing performed during the process of watching a video by the user terminal 100, or an operation of jumping to another page performed by the user in the current page of the terminal 100, etc. Or, when the terminal 100 displays a certain page, the first APP periodically sends an advertisement request to the ADX platform 200 through the integrated advertisement SDK thereof, so as to update advertisement contents in advertisement slots in the page in real time, and the like. In summary, the embodiment of the present application does not limit the timing and scenario of sending the advertisement request to the ADX platform 200 by the terminal 100.
Wherein, the advertisement space included in one page of the first APP can be one or more. Then the ad spot information included in the ad request may also include one or more ad spot identifications accordingly. In some examples, when a page of the first APP includes one or more ad slots, the ad slot information in the ad request may be an identification of the page for requesting the ad content corresponding to all ad slots in the page.
In one particular implementation, the first APP may invoke an advertisement-requesting interface of the advertisement SDK, such as an INatveAdLoader (INatveAdLoader), for the native advertisement, to obtain the advertisement according to the ad slots included in the page. The ad SDK then sends an ad request to the ADX platform 200. The following table-an example gives an illustration of the interfaces involved in the first APP invoking the advertisement SDK.
List one
For example, the following example gives a format of an advertisement request transmitted from the terminal 100 to the ADX platform 200:
/>
/>
it can be seen that the advertisement request sent by the terminal 100 to the ADX platform 200 may include information of the first APP, device information of the terminal 100, information of an advertisement slot, and the like. Optionally, information of the advertisement templates locally cached by the terminal 100 (e.g., an identification of the stored advertisement templates) may also be included. Optionally, a version number of a rendering engine in the terminal 100 may also be included. Optionally, network information of the terminal 100 and the like may be included.
After receiving the advertisement request from the terminal 100, the ADX platform 200 sends a request for acquiring an advertisement to the DSP400, S602.
In some embodiments, the ADX platform 200 sends a request for acquiring an advertisement to the DSP400 according to information carried in the request of the terminal 100 (e.g., application information of the first APP, device information of the terminal 100, network information, information of an advertisement slot, etc.) and corresponding advertisement transaction rules (e.g., a targeted delivery policy, etc.).
S603, the DSP400 returns advertisement data to the ADX platform 200.
The DSP400 platform returns corresponding advertisement data to the terminal according to information (such as application information of the first APP, device information of the terminal 100, network information, information of an advertisement slot, etc.) carried in the request of the terminal 100, where the advertisement data may include content of one or more advertisements. In some embodiments, the request to obtain an advertisement includes an identification of an ad spot, and the advertisement data returned by DSP400 may include the content of one or more advertisements. When the advertisement data returned by DSP400 includes the content of a plurality of advertisements, then the advertisement slot of the page of the first APP may display the plurality of advertisements according to a certain carousel rule. In other embodiments, the request to obtain advertisements includes identification of a plurality of ad slots, and the advertisement data returned by DSP400 may include the content of the plurality of advertisements. It is to be appreciated that each ad spot may correspond to the content of one or more ads.
Optionally, the ADX platform 200 returns advertisement data to the terminal 100. After that, the process is carried out,
s604, the ADX platform 200 sends a request to the SSP300 to match the advertisement template. Wherein the request for matching the advertisement template includes advertisement slot information (e.g., advertisement slot identification) and/or information of the terminal 100.
In some embodiments, the ADX platform 200 may perform step S604 after receiving the advertisement data returned by the DSP400 (i.e., performing step S603); step S604 may also be performed after receiving the advertisement request sent by the terminal 100 (i.e. step S601), before step S603 or simultaneously with step S603, which is not specifically limited in the embodiment of the present application.
In one specific implementation, the ADX platform 200 invokes an interface that matches an advertisement template based on information in the advertisement request sent by the terminal 100 (e.g., application information of the first APP, device information of the terminal 100, network information, information of an advertisement slot, etc.), and sends a request to the SSP300 (e.g., more specifically, a recommendation algorithm model in the SSP 300) that matches the advertisement template. Table II exemplarily shows an interface description of the matching advertisement templates invoked by ADX platform 200.
Watch II
The device information is information of the terminal 100.
S605, after receiving the request for matching the advertisement templates of the ADX platform 200, the SSP300 matches the corresponding advertisement templates for the advertisement request of the terminal 100 according to the recommendation algorithm, and returns the identifier of the recommended advertisement template (hereinafter referred to as the recommendation template) to the ADX platform 200.
In one embodiment, after the SSP300 (e.g., specifically, a recommendation algorithm model in the SSP 300) receives a request for matching an advertisement template, the SSP300 searches for a user representation of the terminal 100 based on an identification of the terminal 100 in the request, and determines an advertisement template matching an advertisement slot identification in the request based on the user representation of the terminal 100, i.e., a recommended advertisement template. User portraits include, but are not limited to, preferences (e.g., preference picture type or video type) when the user views the advertisement, duration of viewing the advertisement (e.g., duration of playing the advertisement video), and manner of interaction (e.g., sliding operation, clicking operation, panning, voice interaction) when viewing the advertisement, etc. For example, as shown in fig. 1C (1), when the advertisement data in which the advertisement is placed includes a resource aggregate, the SSP300 may recommend a corresponding advertisement template according to the user portrait of the terminal 100. For example, if the user prefers a picture type when watching an advertisement, the SSP300 recommends an advertisement template 3 as shown in (2) of fig. 1C to the terminal 100, and an advertisement view corresponding to the advertisement template 3 includes text information and picture information, excluding video information and moving picture information. For another example, if the user prefers the video type when watching an advertisement, the SSP300 recommends the advertisement template 4 as shown in (3) of fig. 1C to the terminal 100, and the advertisement view corresponding to the advertisement template 4 includes text information and video information, excluding picture information and moving picture information.
S606, the ADX platform 200 returns advertisement data and information of the recommendation template to the terminal 100.
In some embodiments, the ADX platform 200 may return the advertisement data and the information of the recommendation template (such as the identification of the recommendation module) to the terminal 100 at one time, or may return the advertisement data to the terminal 100 after the ADX platform 200 receives the advertisement data returned by the DSP 400; after receiving the information of the recommended template from the SSP300, the terminal 100 returns the information of the recommended template. Alternatively, the ADX platform 200 returns the information of the recommendation template to the terminal 100 before returning the advertisement data.
In one specific implementation, the first APP of the terminal 100 may obtain the status of the advertisement SDK requesting the advertisement by calling an advertisement request status callback interface (native ad list) of the advertisement SDK, and the following table three exemplarily gives an advertisement request status callback interface description of the advertisement SDK.
Watch III
The native advertisement list returned by the current request includes advertisement data returned by the ADX platform 200 to the terminal 100, including one or more advertisement contents.
For example, the following exemplarily gives a format of advertisement data returned from the ADX platform 200 to the terminal 100:
/>
/>
from the above, the returned advertisement data includes information such as the type of the returned advertisement, the content of the advertisement, the identification of the recommended advertisement template, the identification of the advertisement task, and the advertisement position. In addition, the advertisement templates recommended in the advertisement data returned at this time may be any of the advertisement templates locally cached in the terminal 100, or may not be in the advertisement templates locally cached in the terminal 100.
S607, the terminal 100 searches whether the template file of the recommended template exists locally according to the information of the recommended template.
In some embodiments, in combination with the schematic structural diagram of the first APP shown in fig. 3, the first APP may search, through the module management module in the advertisement SDK, whether the terminal 100 locally stores the template file of the recommended template according to the information of the recommended template.
If the terminal 100 locally stores the template file of the recommendation template, the advertisement SDK calls the rendering engine to analyze the template file of the recommendation template, binds the corresponding data structure in the template file with the corresponding data in the advertisement data, calls the native rendering system of the terminal 100 to draw the advertisement view, and presents the advertisement to the user. That is, step S610a is performed.
If the terminal 100 does not locally store the template file of the recommended template, the terminal 100 performs step S608 described below.
In one specific implementation, the first APP of the terminal 100 may query, add, delete, update the template file of the advertisement template stored by the template management module in the advertisement SDK by calling the interface of the advertisement template management provided by the advertisement SDK, and the following table four exemplarily gives an interface description of the advertisement template management provided by the advertisement SDK.
Table four
The template information includes, but is not limited to, a template identification, a template information address, a template version, a data structure included in the template, and the like. The following table five exemplarily gives the contents of the template information.
TABLE five
S608, if the terminal 100 does not find the template file of the recommended template, it requests the SSP300 to download the template file of the recommended template.
In one particular implementation, the terminal 100 may request the advertisement template repository of the SSP300 to download a template file of a recommended template.
S609, the SSP300 returns a template file of the recommended template to the terminal 100.
In some embodiments, the template file includes the interface layout of the advertisement view, interaction information, dynamic effects, and the like. In one example, the template file may be a text file. The template file of a certain advertisement template may include one or more files.
The following example is given for a part of the content in a template file of one advertisement template, as follows:
s610, the terminal 100 detects whether the version of the rendering engine in the advertisement SDK meets the requirement.
In some embodiments, the terminal 100 (more specifically, the first APP) checks whether the version of the rendering engine in the advertisement SDK satisfies the rendering requirement, i.e., the requirement of rendering according to the recommendation template, before rendering the advertisement view according to the recommendation template. In some examples, the minimum version number of the required rendering engine is also included in the template file of the recommendation template. Then, when rendering using the recommendation template, the terminal 100 first detects whether the version number of the rendering engine in the advertisement SDK meets the lowest version number required by the recommendation template. If so, the terminal 100 invokes a rendering engine of the advertisement SDK to draw the advertisement view, i.e., performs step S615 described below. If not, the terminal 100 first loads the latest version of the rendering engine, i.e., performs the displaying step S611.
S611, the terminal 100 requests the application marketplace server 500 to load the latest version of the rendering engine.
In one example, the present step S611 includes a step S611a and a step S611b. The first APP of the terminal 100 carries the version number of the rendering engine in the advertisement SDK to load the latest version of the rendering engine to the mobile service request of the terminal 100. The mobile service requests the application marketplace to update the latest version of the rendering engine according to the version number of the rendering engine in the advertisement SDK. In one particular implementation, the rendering engine may be a tool (kit) package.
In one particular implementation, the first APP of the terminal 100 may query the version of the rendering engine in the advertisement SDK by invoking an interface provided by the advertisement SDK. The following table six exemplarily presents an interface description of the query rendering engine version provided by the advertisement SDK.
TABLE six
S612, the terminal 100 requests the SSP300 to download the latest version of the rendering engine.
S613, the SSP300 returns the latest version of the rendering engine to the terminal 100.
S614, the terminal 100 dynamically loads the latest version of the rendering engine.
In some embodiments, step S614 includes step S614a and step S614b. After receiving the latest version of the rendering engine returned by the SSP300, the application marketplace of the terminal 100 sends the latest version of the rendering engine to the mobile service. The advertisement SDK of the first APP (e.g., more specifically, a dynamic loading module in the advertisement SDK) obtains the latest version of the rendering engine from the mobile service in a dynamic loading manner. For example, the advertisement SDK loads the kit package of the rendering engine of the latest version in the mobile service in a DexLoader mode, and then loads codes in the kit package in a reflection mode, so that the code in the kit package in the mobile service can be executed when the advertisement SDK runs, and the rendering engine in the advertisement SDK can realize the performance of the new version.
In one specific implementation, the first APP may implement dynamically loading the latest version of the rendering engine in the mobile service by invoking a dynamic loading interface provided by the advertisement SDK. The following table seven exemplarily gives a description of the dynamic loading interface provided by the advertisement SDK.
Watch seven
S615, the terminal 100 draws an advertisement view according to the advertisement data and the recommendation template.
In some embodiments, the rendering engine in the first APP may parse the interface layout, interaction information, dynamic effects, and the like in the recommendation template, and convert the recommendation template into an interface description file, an interaction file, and the like of a rendering system native to the terminal 100 (e.g., a rendering system native to an Android system). The rendering engine also parses the advertisement data returned from DSP300, populates the corresponding locations in the advertisement view with content corresponding to the data structures defined in the recommendation templates, and ultimately generates a complete advertisement view.
It will be appreciated that since the native rendering system of the terminal 100 itself has a strong view capability, for example, various types of controls can be drawn, and the various types of controls have different functions. In the embodiment of the application, the advertisement SDK renders and draws the advertisement view by calling the native rendering system of the terminal 100 through the rendering engine, so that the advertisement SDK can draw more types of controls, and various types of controls also have different functions, so that the advertisement view presented to the user has more abundant types of controls, and the functions that can be realized by the various controls are also abundant, thereby greatly improving the visual experience and the use experience of the advertisement. For example, through the advertisement SDK provided by the embodiments of the present application, an advertisement view with a richer interaction mode can be drawn, and the advertisement view may also present more visual effects, such as presenting 3D effects.
In one particular implementation, the first APP may implement rendering the advertisement view by invoking an interface of a rendering engine provided by the advertisement SDK. The following table eight exemplarily gives an interface description of a rendering engine provided by the advertisement SDK.
Table eight
As can be seen from the above, the advertisement display method provided by the embodiment of the present application can realize decoupling of advertisement data and advertisement templates, and match corresponding advertisement templates for an advertisement requester (e.g., terminal 100), and terminal 100 finally presents the advertisement data according to the recommended advertisement templates, i.e., draws advertisement views. It will be appreciated that in some examples, the developer of the advertisement SDK may update the advertisement template to be presented to the user and interact with the user, and so on, and then the terminal 100 may directly download the updated advertisement template from the SSP300 without updating the advertisement SDK therein or updating the APP of the integrated advertisement SDK. In other examples, the terminal 100 may also obtain a new version of the rendering engine from the application marketplace by means of dynamic loading, without updating the entire advertisement SDK or updating the APP of the integrated advertisement SDK.
In addition, since the advertisement display method provided by the embodiment of the application can also match the corresponding advertisement templates for the advertisement requesting party according to the information (such as the user portrait) of the advertisement requesting party (such as the terminal 100), personalized advertisement presenting effects can be provided for different users, that is, the same advertisement (such as the same advertisement identifier) can also achieve thousand-person and thousand-face advertisement presenting effects, and the visual experience and the use experience of the advertisement are greatly improved.
Optionally, the method flow may further include the following step S616 and step S617.
S616, the terminal 100 records the user behavior related to the advertisement view, and reports the user behavior to the SSP300.
Among other things, user behavior related to an advertisement view includes, but is not limited to, user interaction with the advertisement view, user viewing of the advertisement view, and the like.
S617, the SSP300 updates the user portrait of the terminal 100 according to the user behavior reported by the terminal 100.
The user portrait may include an operation habit of the user, for example, a time period for watching the advertisement video does not exceed a preset time period (for example, 10 seconds), the user habit uses an upward sliding operation to close the advertisement view, the user habit uses a shake-to-shake mode to open the advertisement view, and so on.
Thus, the terminal 100 may periodically or in real time report the user behavior related to the advertisement view, and the SSP300 may update the user portrait of the terminal 100 according to the reported user behavior related to the advertisement view, so as to match a more suitable advertisement template for the terminal 100 according to the updated user portrait.
In addition, according to the technical scheme provided by the embodiment of the application, when an advertiser puts advertisements, only the content (such as characters, pictures, videos and the like) of the advertisements, logic of the advertisements and the like can be developed, and the situation when the advertisements are presented to users is not required to be designed, including the layout mode of the advertisements, the interaction mode with the users and the like. Wherein the appearance of the advertisement as presented to the user (i.e., the view of the advertisement presented) may be determined by the advertisement template designed by the advertisement SDK developer and the user portrayal of the advertisement requester.
Fig. 7 is a schematic flow chart of another advertisement display method according to an embodiment of the present application, where the method includes:
s701, the application market APP of the terminal 100 obtains the rendering engine of the new version on shelf from the server 500 of the application market.
As described above, when the rendering engine needs to be updated due to a function-dependent change to the native rendering system, or an update due to a specification of an advertisement template (e.g., a change in a defined data structure, etc.), a developer of the advertisement SDK may issue a new version of the rendering engine to the application marketplace server 500. Then, the application marketplace APP of the terminal 100 may acquire the up-to-shelf information of the latest version of the rendering engine from the server 500 of the application marketplace.
S702, the mobile service of the terminal 100 automatically updates the rendering engine of the new version.
The mobile service of the terminal 100 periodically (according to a preset time period) compares the version number of the rendering engine existing in itself with the version number of the rendering engine on the shelf in the application market APP. When it is checked that the application marketplace APP has a new version of the rendering engine set up, the mobile service automatically downloads the new version of the rendering engine from the application server 500 through the application marketplace APP.
S703, initializing an advertisement SDK when the first APP of the terminal 100 is started.
When the terminal 100 starts the first APP, the advertisement SDK is initialized. When the advertisement SDK is initialized, the advertisement SDK carries the version number of the rendering engine of the advertisement SDK, and the advertisement SDK inquires whether the rendering engine has a new version from the mobile service. If there is a new version of rendering engine for the mobile service, the following step S704 is performed. Alternatively, in other embodiments, the first APP of the terminal 100 may also periodically (according to a preset time period) carry the version number of its rendering engine, and query from the mobile service whether the rendering engine has a new version. If there is a mobile service with a new version of the rendering engine. The embodiment of the present application is not particularly limited.
S704, the advertisement SDK of the terminal 100 dynamically loads a new version of rendering engine from the mobile service.
S705, the advertisement SDK of the terminal 100 acquires the updated advertisement template from the SSP 300.
In some embodiments, the advertisement SDK of the terminal 100 may also carry the version number of the advertisement template, querying the SSP300 as to whether there is a new version of the advertisement template. If so, the terminal 100 requests the updated advertisement template to be downloaded. It can be appreciated that the advertisement template has a smaller file, the terminal 100 has a faster downloading and updating rate of the advertisement template, and the user is not aware of the advertisement template and cannot be disturbed to use the first APP normally.
In other embodiments, the terminal 100 may not perform step S705 first. In some examples, terminal 100 may first check whether the local advertisement template is the latest version of the advertisement template. If it is the latest version, step S706 is directly performed without executing this step. If not the latest version, the step is executed again. In other examples, the terminal 100 may also directly perform step S706 without checking whether the local advertisement template is the latest version of the advertisement template. Subsequently, after step S711 is performed, when it is determined that the terminal 100 does not store the recommended template locally, the template file of the recommended template is downloaded from the SSP300, and the above-described steps S608 and S609 in fig. 6 can be viewed. Alternatively, when it is determined that the recommended templates are not locally stored in the terminal 100, the terminal 100 directly requests the download of all updated advertisement templates, including the recommended templates, from the SSP 300. The embodiment of the present application is not particularly limited.
In other embodiments, the first APP of the terminal 100 may also periodically (according to a preset time period) carry the version number of the advertisement template, and query the SSP300 for whether there is a new version of the advertisement template. The embodiment of the present application is not particularly limited.
S706, the advertisement SDK of the terminal 100 sends an advertisement request to the ADX platform 200.
S707, the ADX platform 200 obtains an advertisement from the DSP 400.
S708, the DSP400 returns advertisement data to the ADX platform 200.
S709, the ADX platform 200 requests the SSP300 for a recommended template.
S710, the SSP300 returns information of the recommended template to the ADX platform 200.
S711, the ADX platform 200 returns information of the recommendation template and advertisement data to the terminal 100.
And S712, the terminal 100 draws advertisement views according to the recommended advertisement templates and the advertisement data.
The steps S706 to S712 may refer to the relevant content of the embodiment described in fig. 6, and are not repeated here.
In this way, in the embodiment of the application, the developer of the advertisement SDK can individually update the rendering engine in the advertisement SDK in the form of a kit packet, and put the new version of the rendering engine on the application market. And the first APP (for example, more specifically, the advertisement SDK in the first APP) in the terminal 100 automatically loads the execution code of the new version rendering engine in a dynamic loading manner, so as to implement updating of the advertisement SDK. Thus, the developer of the first APP does not need to re-develop the new version of the first APP for the new function of the new version rendering engine, the terminal 100 does not need to update the first APP, and the new function of the new version rendering engine can be realized without updating the entire advertisement SDK.
Embodiments of the present application also provide a chip system, as shown in fig. 8, comprising at least one processor 1101 and at least one interface circuit 1102. The processor 1101 and interface circuit 1102 may be interconnected by wires. For example, interface circuit 1102 may be used to receive signals from other devices, such as a memory of terminal 100. For another example, the interface circuit 1102 may be used to send signals to other devices (e.g., the processor 1101). The interface circuit 1102 may, for example, read instructions stored in a memory and send the instructions to the processor 1101. The instructions, when executed by the processor 1101, may cause the terminal to perform the various steps performed by the terminal 100 (e.g., handset) in the above-described embodiments. Of course, the chip system may also include other discrete devices, which are not specifically limited in this embodiment of the present application.
The embodiment of the application also provides a device which is contained in the terminal and has the function of realizing the terminal behavior in any one of the methods in the embodiment. The functions can be realized by hardware, and can also be realized by executing corresponding software by hardware. The hardware or software includes at least one module or unit corresponding to the functions described above. For example, a detection module or unit, a display module or unit, a determination module or unit, a calculation module or unit, and the like.
The embodiments also provide a computer storage medium comprising computer instructions which, when run on a terminal, cause the terminal to perform a method as in any of the embodiments above.
Embodiments of the present application also provide a computer program product for causing a computer to perform any of the methods of the embodiments described above when the computer program product is run on the computer.
Embodiments of the present application also provide a graphical user interface on a terminal having a display screen, a camera, a memory, and one or more processors for executing one or more computer programs stored in the memory, the graphical user interface comprising a graphical user interface displayed by the terminal when performing any of the methods of the embodiments described above.
It will be appreciated that the above-described terminal, etc. may comprise hardware structures and/or software modules that perform the respective functions in order to achieve the above-described functions. Those of skill in the art will readily appreciate that the elements and algorithm steps of the examples described in connection with the embodiments disclosed herein may be implemented as hardware or combinations of hardware and computer software. Whether a function is implemented as hardware or computer software driven hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the embodiments of the present invention.
The embodiment of the present application may divide the functional modules of the terminal and the like according to the above method example, for example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated modules may be implemented in hardware or in software functional modules. It should be noted that, in the embodiment of the present invention, the division of the modules is schematic, which is merely a logic function division, and other division manners may be implemented in actual implementation.
From the foregoing description of the embodiments, it will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of functional modules is illustrated, and in practical application, the above-described functional allocation may be implemented by different functional modules according to needs, i.e. the internal structure of the apparatus is divided into different functional modules to implement all or part of the functions described above. The specific working processes of the above-described systems, devices and units may refer to the corresponding processes in the foregoing method embodiments, which are not described herein.
The functional units in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the embodiments of the present application may be essentially or a part contributing to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: flash memory, removable hard disk, read-only memory, random access memory, magnetic or optical disk, and the like.
The foregoing is merely a specific embodiment of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present disclosure should be covered in the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (22)

1. A method of advertising display, the method comprising:
the terminal sends a first advertisement request to a first server, wherein the first advertisement request is used for requesting a first advertisement corresponding to a first advertisement position in a first application;
the terminal receives the content of the first advertisement returned by the first server and information of a first advertisement template, wherein the first advertisement template is used for indicating a mode of presenting the first advertisement in the first advertisement position;
the terminal displays a first interface of the first application, wherein the first interface comprises the first advertisement displayed according to the first advertisement template.
2. The method of claim 1, wherein before the terminal displays the first interface of the first application, the method further comprises:
if the terminal does not find the template file corresponding to the first advertisement template locally according to the information of the first advertisement template, requesting the template file of the first advertisement template from the first server;
The terminal receives a template file of the first advertisement template returned by the first server; the template file of the first advertisement template comprises the interface layout and interaction information of the advertisement.
3. The method according to claim 1 or 2, wherein before the terminal displays the first interface of the first application, the method further comprises:
the terminal acquires a template file of the corresponding first advertisement template according to the information of the first advertisement template;
the terminal checks whether the version of the rendering engine of the terminal meets the preset condition according to the template file of the first advertisement template;
if the version of the rendering engine of the terminal does not meet the preset condition, the terminal requests the latest version of the rendering engine from a second server;
and the terminal receives the latest version of the rendering engine returned by the second server.
4. A method according to claim 3, wherein the template file of the first advertisement template includes the preset condition.
5. The method according to claim 3 or 4, wherein if the version of the rendering engine of the terminal does not meet the preset condition, the terminal requests the latest version of the rendering engine from the second server, comprising:
The first application of the terminal requests the second server to download the latest version of the rendering engine through mobile service and application market application;
the terminal receiving the latest version of the rendering engine returned by the second server, comprising:
after the application market application of the terminal receives the latest version of the rendering engine returned by the second server, the latest version of the rendering engine is returned to the mobile service;
the first application of the terminal obtains the latest version of the rendering engine from the mobile service in a dynamic loading manner.
6. The method according to any one of claims 1-5, further comprising:
when the terminal starts the first application or according to a preset time period, the terminal requests the first server to update an advertisement template;
and the terminal receives the template file of the advertisement template returned by the first server to update the template file of the advertisement template stored locally.
7. The method according to any one of claims 1-6, further comprising:
when the terminal starts the first application or according to a preset time period, the terminal checks whether the version of the rendering engine of the terminal is the latest version;
And if the version of the rendering engine of the terminal is not the latest version, requesting the latest version of the rendering engine from an application first server.
8. The method according to any of claims 1-7, wherein after the terminal displays the first interface of the first application, the method further comprises:
and the terminal uploads the interaction behavior of the user for the first advertisement in the first interface to the first server, and the interaction behavior is used for updating the user portrait corresponding to the terminal by the first server according to the interaction behavior of the user for the first advertisement in the first interface.
9. The method according to any of claims 1-8, wherein before the terminal sends the first advertisement request to the first server, the method further comprises:
the terminal receives a first indication for displaying the first interface of the first application, wherein the first indication is an indication for starting the first application, and the first interface is a main interface of the first application; or, the first indication is an operation of switching an interface of the first application.
10. The method according to any one of claims 1-9, wherein the method further comprises:
The terminal sends a second advertisement request to the first server, wherein the second advertisement request is used for requesting a second advertisement corresponding to the first advertisement position in the first application;
the terminal receives the content of the second advertisement and the information of a second advertisement template returned by the first server; wherein the second advertisement template is used to indicate a manner in which content of the second advertisement is presented in the first advertisement spot, and the second advertisement template is different from the first advertisement template;
and the terminal displays the second interface of the first application, wherein the second interface comprises the second advertisement displayed according to the second advertisement template.
11. The method of any of claims 1-10, wherein the first advertisement template or the second broadcast template is a text file.
12. The method of any of claims 1-11, wherein the rendering engine is a tool kit package.
13. The method of any of claims 1-12, wherein the first advertisement request includes information of the terminal, information of the first ad spot, information of the first application, information of an advertisement template locally cached by the terminal, and one or more of version information of a rendering engine of the terminal.
14. A method of advertising display, the method comprising:
the method comprises the steps that a server receives a first advertisement request sent by a terminal, wherein the first advertisement request is used for requesting a first advertisement corresponding to a first advertisement position in a first application;
and the server returns the content of the first advertisement and the information of the first advertisement template to the terminal, wherein the first advertisement template is used for indicating the mode of the terminal for presenting the content of the first advertisement in the first advertisement position.
15. The method of claim 14, wherein the step of providing the first information comprises,
the first advertisement request includes information of the terminal, information of the first advertisement location, information of the first application, information of an advertisement template locally cached by the terminal, and one or more of version information of a rendering engine of the terminal.
16. The method according to claim 14 or 15, wherein,
and the server determines the information of the first advertisement template according to the user portrait corresponding to the information of the terminal in the first advertisement request.
17. The method according to any one of claims 14 to 16, wherein,
the server receives an input event for the content of the first advertisement, wherein the content of the first advertisement includes one or more of a commodity name, a commodity price, picture information, and video information.
18. The method according to any one of claims 14-17, further comprising:
the server receives a second advertisement request sent by the terminal, wherein the second advertisement request is used for requesting a second advertisement corresponding to the first advertisement position in the first application;
the server returns the content of the second advertisement and the information of the second advertisement template to the terminal, wherein the second advertisement template is used for indicating the mode of the terminal for presenting the content of the first advertisement in the first advertisement position; wherein the second advertisement template is different from the first advertisement template.
19. A terminal, comprising: a processor, a memory, and a display screen, the memory, the display screen being coupled to the processor, the memory being for storing computer program code, the computer program code comprising computer instructions that, when read from the memory by the processor, cause the terminal to perform the method of advertisement presentation as claimed in any one of claims 1 to 13.
20. A server, comprising: a processor, a memory, and a communication interface, the memory coupled with the processor, the memory for storing computer program code, the computer program code comprising computer instructions that, when read from the memory by the processor, cause the server to perform the method of advertisement presentation of any of claims 14-18.
21. A computer readable storage medium comprising computer instructions which, when run on a terminal, cause the terminal to perform the method of advertisement presentation of any of claims 1-13.
22. A computer readable storage medium comprising computer instructions which, when run on a server, cause the server to perform the method of advertisement presentation of any of claims 14-18.
CN202211034416.6A 2022-08-26 2022-08-26 Advertisement display method, terminal, server and system Pending CN117670379A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211034416.6A CN117670379A (en) 2022-08-26 2022-08-26 Advertisement display method, terminal, server and system
PCT/CN2023/111587 WO2024041367A1 (en) 2022-08-26 2023-08-07 Advertisement display method, and terminal, server and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211034416.6A CN117670379A (en) 2022-08-26 2022-08-26 Advertisement display method, terminal, server and system

Publications (1)

Publication Number Publication Date
CN117670379A true CN117670379A (en) 2024-03-08

Family

ID=90012476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211034416.6A Pending CN117670379A (en) 2022-08-26 2022-08-26 Advertisement display method, terminal, server and system

Country Status (2)

Country Link
CN (1) CN117670379A (en)
WO (1) WO2024041367A1 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103578016A (en) * 2012-08-02 2014-02-12 北京千橡网景科技发展有限公司 Advertisement publishing method and system
US9773261B2 (en) * 2015-06-19 2017-09-26 Google Inc. Interactive content rendering application for low-bandwidth communication environments
CN108256892A (en) * 2016-12-29 2018-07-06 北京奇虎科技有限公司 Method, apparatus, server and the system of advertising display are carried out in Webpage
CN109819273B (en) * 2018-12-20 2021-08-13 华为技术有限公司 End-side advertisement display method and corresponding terminal and server
CN113781115B (en) * 2021-09-13 2023-07-25 北京奇艺世纪科技有限公司 Advertisement display method, system, equipment and storage medium
CN114255084A (en) * 2021-12-21 2022-03-29 北京沃东天骏信息技术有限公司 Advertisement page display method, device and system

Also Published As

Publication number Publication date
WO2024041367A1 (en) 2024-02-29

Similar Documents

Publication Publication Date Title
US20220308899A1 (en) Application Start Method and Electronic Device
CN110430324B (en) Display method, electronic equipment and storage medium for application screen opening information
CN113553130B (en) Method for executing drawing operation by application and electronic equipment
WO2022078295A1 (en) Device recommendation method and electronic device
WO2021169370A1 (en) Method for cross-device allocation of service elements, terminal device, and storage medium
CN112860445B (en) Method and terminal for sharing data between fast application and native application
CN115333941B (en) Method for acquiring application running condition and related equipment
CN114745468B (en) Electronic equipment and theme setting method, system and medium thereof
WO2021104117A1 (en) Method for constructing application program resource packet, construction apparatus, and terminal device
WO2023005711A1 (en) Service recommendation method and electronic device
CN114489689B (en) Application program installation method and system, electronic equipment and server
CN114443117B (en) Custom package processing method and electronic equipment
WO2024041367A1 (en) Advertisement display method, and terminal, server and system
CN113051015A (en) Page rendering method and device, electronic equipment and storage medium
CN114995963A (en) Advertisement display system and method
CN117009023B (en) Method for displaying notification information and related device
CN116048629B (en) System service switching method, control device, electronic equipment and storage medium
CN116743908B (en) Wallpaper display method and related device
CN114513575B (en) Method for collection processing and related device
CN114979459B (en) Shooting material management method, electronic equipment and system
CN117851617A (en) Display method, electronic device, storage medium, and program product
CN116483227A (en) Appearance setting method and electronic equipment
CN117170535A (en) Card management method, electronic device, and computer-readable storage medium
CN117666861A (en) Service card distribution method, system and electronic equipment
CN117850896A (en) Preloading method, electronic equipment, chip and readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication