WO2024041367A1 - 一种广告展示的方法、终端、服务器及系统 - Google Patents

一种广告展示的方法、终端、服务器及系统 Download PDF

Info

Publication number
WO2024041367A1
WO2024041367A1 PCT/CN2023/111587 CN2023111587W WO2024041367A1 WO 2024041367 A1 WO2024041367 A1 WO 2024041367A1 CN 2023111587 W CN2023111587 W CN 2023111587W WO 2024041367 A1 WO2024041367 A1 WO 2024041367A1
Authority
WO
WIPO (PCT)
Prior art keywords
advertisement
terminal
template
advertising
server
Prior art date
Application number
PCT/CN2023/111587
Other languages
English (en)
French (fr)
Inventor
姜明
金有奇
王星
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2024041367A1 publication Critical patent/WO2024041367A1/zh

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

Definitions

  • This application relates to the field of Internet technology, and in particular to an advertisement display method, terminal, server and system.
  • APP built-in advertising applications for applications
  • SDK third-party advertising software development kit
  • the APP obtains relevant advertisements from the advertising exchange platform through the advertising SDK and displays them to users.
  • the third-party advertising SDK releases a new version (such as updating the layout of the advertisement, etc.)
  • the APP developer needs to update his or her application according to the new version of the advertising SDK, that is, release a new version of the APP, and the user can do so on the terminal side.
  • Update APP version It can be seen that when the update requirements of the advertising SDK are frequent, APP developers also need to frequently update the version of the APP, and users need to frequently update the version of the APP on the terminal.
  • the existing update method of the advertising SDK is relatively cumbersome.
  • This application provides an advertisement display method, terminal, server and system, which can prevent the terminal from frequently updating application programs due to updates of advertisement layout.
  • a first aspect provides a method for advertising display.
  • the method includes: a terminal sending a first advertisement request to a first server, where the first advertisement request is used to request a first advertisement corresponding to a first advertisement slot in a first application; upon receiving After receiving the first advertisement request, the first server obtains the content of the first advertisement and obtains the information of the first advertisement template; and sends the information to the terminal.
  • the terminal receives the content of the first advertisement and the information of the first advertisement template returned by the first server, where the first advertisement template is used to indicate the manner of presenting the first advertisement in the first advertisement slot; the terminal receives the first advertisement returned by the first server according to the first advertisement template.
  • the advertising template information downloads the template file of the first advertising template locally or from the first server, displays the first advertisement in the first advertising space of the first interface according to the template file of the first advertising template, then the terminal displays the first application A first interface, wherein the first interface includes a first advertisement displayed according to a first advertisement template.
  • the advertisement display method provided by this application decouples the content of the first advertisement and the presentation method of the first advertisement.
  • the first server can match the corresponding advertisement template for the terminal, such as the first advertisement template, and the terminal Finally, the ad content is rendered based on the matching ad template.
  • the advertising SDK is integrated into the first application. Then, the developer of the advertising SDK can update the final appearance of the advertisement to the user and the interaction method with the user by updating the advertising template. Then, the terminal can directly download the updated advertising template from the first server without having to modify the advertising template.
  • the terminal-integrated advertising SDK needs to be updated, and there is no need to update the first application that integrates the advertising SDK. This prevents the terminal from frequently updating applications due to updates of advertising layouts.
  • the method before the terminal displays the first interface of the first application, the method further includes: if the terminal does not find a template file corresponding to the first advertisement template locally based on the information of the first advertisement template, The first server requests the template file of the first advertisement template; the terminal receives the template file of the first advertisement template returned by the first server; the template file of the first advertisement template includes the interface layout and interaction information of the advertisement. This provides an update timing for the advertising template.
  • the method before the terminal displays the first interface of the first application, the method further includes: the terminal obtains the template file of the corresponding first advertisement template according to the information of the first advertisement template; the terminal obtains the template file of the corresponding first advertisement template according to the first advertisement template.
  • the template file checks whether the version of the terminal's rendering engine meets the preset conditions; if the version of the terminal's rendering engine does not meet the preset conditions, the terminal requests the latest version of the rendering engine from the second server; the terminal receives the rendering returned by the second server The latest version of the engine. This provides an update opportunity for the rendering engine.
  • the advertising SDK of the terminal includes a rendering engine, which can be used to call the terminal's native rendering system for rendering according to the advertising template, and present the received advertising content. Understandably, by calling the terminal's native rendering system
  • the rendered view of the first advertisement can remain consistent with the image of the original page of the first application, thereby avoiding visual abruptness to the user due to inconsistencies in style, tone, etc. between the view of the first advertisement and the original page of the first application.
  • the view of the first advertisement rendered by calling the native rendering system of the terminal can have richer interface controls and more powerful interface capabilities, such as the view of the first advertisement It can provide richer interface interaction methods, and the view of the first advertisement can have richer visual presentation effects, such as 3D visual effects.
  • the template file of the first advertisement template includes preset conditions.
  • the preset condition is the minimum version information of the rendering engine required by the first advertisement template.
  • the terminal requests the latest version of the rendering engine from the second server, including: the first application of the terminal is applied through mobile services and application markets, Requesting the second server to download the latest version of the rendering engine; the terminal receiving the latest version of the rendering engine returned by the second server, including: after the terminal's application market application receives the latest version of the rendering engine returned by the second server, it returns to the mobile service The latest version of the rendering engine; the first application of the terminal uses dynamic loading to obtain the latest version of the rendering engine from the mobile service.
  • the developer of the advertising SDK can release a new version.
  • the rendering engine is sent to the application market server, and the terminal can obtain a new version of the rendering engine from the application market server through dynamic loading.
  • the terminal does not need to update the entire advertising SDK, nor does it need to update the APP that integrates the advertising SDK.
  • the method further includes: when the terminal starts the first application or according to a preset time period, the terminal requests the first server to update the advertising template; the terminal receives the template file of the advertising template returned by the first server Update the template file for a locally stored ad template. This provides another opportunity to update the ad template.
  • the method also includes: when the terminal starts the first application or according to a preset time period, the terminal checks whether the version of the terminal's rendering engine is the latest version; if the version of the terminal's rendering engine is not the latest version version, request the latest version of the rendering engine from the first application server. This provides an update opportunity for another rendering engine version.
  • the method further includes: the terminal uploads the user's interactive behavior for the first advertisement in the first interface to the first server for the first
  • the server updates the user portrait corresponding to the terminal according to the user's interaction behavior with respect to the first advertisement in the first interface.
  • the first application can match different advertising templates for different terminals according to the user portrait of the terminal, so even for the same advertising data, it can be used for thousands of people and provide users with personalized Advertising performance.
  • the method before the terminal sends the first advertisement request to the first server, the method further includes: the terminal receives a first instruction to display the first interface of the first application, wherein the first instruction is to start Instruction of the first application, the first interface is the main interface of the first application; or, the first instruction is an operation of switching the interface of the first application.
  • the method further includes: the terminal sends a second advertisement request to the first server, the second advertisement request is used to request a second advertisement corresponding to the first advertisement slot in the first application; the terminal receives the first The content of the second advertisement and the information of the second advertisement template returned by the server; wherein the second advertisement template is used to indicate the manner in which the content of the second advertisement is presented in the first advertisement slot, and the second advertisement template is different from the first advertisement template; The terminal displays a second interface of the first application, where the second interface includes a second advertisement displayed according to a second advertisement template. It can be seen that for the same advertising space on the same terminal, different advertising templates may be used to present advertisements.
  • the first advertisement template or the second broadcast template is a text file. It is understandable that the file size of the advertising template is smaller, the terminal downloads and updates the advertising template faster, the user is unaware of it, and it does not disturb the user's normal use of the first application.
  • the rendering engine is a tool kit package.
  • the first advertising request includes information about the terminal, information about the first advertising space, information about the first application, information about the locally cached advertising template of the terminal, and version information of the rendering engine of the terminal.
  • a method for advertising display includes: the server receives a first advertisement request sent by the terminal, and the first advertisement request is used to request a first advertisement corresponding to the first advertisement slot in the first application; the server sends the request to the terminal. Return the content of the first advertisement and the information of the first advertisement template, where the first advertisement template is used to instruct the terminal to present the content of the first advertisement in the first advertisement slot. Tolerant way.
  • the first advertising request includes information about the terminal, information about the first advertising space, information about the first application, information about the locally cached advertising template of the terminal, and version information of the rendering engine of the terminal.
  • the server determines the information of the first advertisement template based on the user portrait corresponding to the terminal information in the first advertisement request.
  • the server receives an input event for the content of the first advertisement, where the content of the first advertisement includes one or more of product name, product price, picture information, and video information.
  • the method further includes: the server receiving a second advertisement request sent by the terminal, the second advertisement request being used to request a second advertisement corresponding to the first advertisement slot in the first application; and the server returning the second advertisement request to the terminal.
  • a terminal including: a processor, a memory, and a display screen.
  • the memory, the display screen, and the processor are coupled.
  • the memory is used to store computer program code, and the computer program code includes Computer instructions, when the processor reads the computer instructions from the memory, so that the terminal executes the method described in the first aspect and any of the possible implementations.
  • a server including: a processor, a memory, and a communication interface.
  • the memory, the communication interface, and the processor are coupled.
  • the memory is used to store computer program code, and the computer program code includes Computer instructions, when the processor reads the computer instructions from the memory, so that the server executes the method described in the second aspect and any of the possible implementations.
  • a fifth aspect is to provide a device, which is included in a terminal or a server, and has the function of realizing the behavior of the terminal or server in any of the above aspects and possible implementation methods.
  • This function can be implemented by hardware, or it can be implemented by hardware executing corresponding software.
  • the hardware or software includes at least one module or unit corresponding to the above functions. For example, a receiving module or unit, a sending module or unit, a processing module or unit, etc. Optionally, a display module or unit may also be included.
  • a sixth aspect provides a computer-readable storage medium, including computer instructions.
  • the terminal is caused to execute the method described in the above-mentioned first aspect and any possible implementation manner thereof.
  • a seventh aspect provides a computer-readable storage medium that includes computer instructions.
  • the server executes the method described in the above-mentioned second aspect and any possible implementation manner thereof.
  • a computer program product is provided.
  • the computer program product When the computer program product is run on a computer, it causes the computer to execute the method described in the above aspects and any of the possible implementations.
  • a ninth aspect provides a chip system, including a processor.
  • the processor executes instructions, the processor executes the method described in the above aspects and any of the possible implementations.
  • the technical effects that can be achieved by reading the storage medium, the computer program product provided by the eighth aspect, and the chip system provided by the ninth aspect please refer to the description of the technical effects in the above-mentioned first aspect and any of the possible implementation methods. , we won’t go into details here.
  • Figure 1A is a schematic diagram of a system architecture provided by an embodiment of the present application.
  • Figure 1B is a schematic diagram of an advertisement display method provided by an embodiment of the present application.
  • Figure 1C is a schematic diagram of another advertisement display method provided by an embodiment of the present application.
  • Figure 2 is a schematic structural diagram of a terminal provided by an embodiment of the present application.
  • Figure 3 is a schematic structural diagram of another terminal provided by an embodiment of the present application.
  • Figure 4 is a schematic structural diagram of an APP provided by an embodiment of the present application.
  • Figure 5 is a schematic structural diagram of a server provided by an embodiment of the present application.
  • FIG. 6 is a schematic flowchart of an advertisement display method provided by an embodiment of the present application.
  • FIG. 7 is a schematic flowchart of yet another advertisement display method provided by an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of a chip system provided by an embodiment of the present application.
  • first and second are used for descriptive purposes only and cannot be understood as indicating or implying relative importance or implicitly indicating the quantity of indicated technical features. Therefore, features defined as “first” and “second” may explicitly or implicitly include one or more of these features. In the description of the embodiments of this application, unless otherwise specified, "plurality” means two or more.
  • FIG. 1A it is an architecture diagram of an advertising display system provided by an embodiment of the present application.
  • the architecture diagram includes a terminal 100, an advertising exchange (Ad exchange, ADX) platform 200 (also known as an advertising exchange server 200), a supply chain Sell-Side Platform (SSP) 300 (also known as supply-side server 300), demand-side platform (DSP) 400 (also known as demand-side server 400), and application market server 500.
  • Ad exchange Ad exchange
  • ADX advertising exchange
  • SSP supply chain Sell-Side Platform
  • DSP demand-side platform
  • the platform or server shown in Figure 1A can be one or more servers, and some of the platforms or servers can be integrated together, or some of the platforms or servers can be split into multiple servers, etc., embodiments of the present application There is no specific limit on this.
  • the ADX platform 200 and the SSP300 can be the same service provider; or the ADX platform 200, the SSP300 and the DSP400 can be the same service provider; or the SSP300 and the DSP400 can be different service
  • ADX200 is used to provide advertising trading functions.
  • SSP300 includes an advertising template warehouse, which is used to manage a large number of advertising templates and can include the production, storage and downloading of advertising templates.
  • the advertising template includes the interface layout of the advertising view, interactive information (such as interaction methods with users, etc.), animation and other contents.
  • the ad template indicates the final appearance of the ad to the user, as well as the interaction method with the user, etc., that is, the presentation effect of the ad view. It is understandable that in real usage scenarios, a large number of SDK update requirements can be met by updating advertising templates. Then, the developer of the advertising SDK or other developers can upload the updated advertising template to the advertising template warehouse of the SSP 300 for the terminal 100 to download and use.
  • the SSP 300 also includes a recommendation algorithm model, which can be used to match the corresponding advertising template to the advertising requesting party based on the information of the advertising requesting party (such as the terminal 100) (such as APP information, user portraits, etc.), that is, to the advertising requesting party. Recommended templates.
  • DSP400 is a management platform provided for advertisers and agents. It manages a large number of advertising resources through a unified interface, such as providing functions such as creating ads and placing ads.
  • FIG 1B it is a schematic interface diagram for advertisers or agents to log in to an advertising exchange platform to place advertisements.
  • the advertiser or agent enters the content of an advertisement in this interface: text information of the product (such as name, price), picture information (such as picture address), jump address, targeted delivery strategy, and placement location of the advertisement, etc.
  • Advertising data It should be noted that the advertising data input by advertisers or agencies here includes advertising content and delivery rules (such as targeted delivery strategies, etc.), and does not define the final appearance of the advertisement to the user.
  • SSP300 matches the corresponding advertisement template for the advertisement requester based on the advertisement requester's information (such as APP information, user portrait, etc.). For example, SSP300 matches advertising template 1 as shown in (2) in Figure 1B for advertising requester 1. In the advertising view corresponding to advertising template 1, the text information of the product is at the top and the picture information is at the bottom. SSP300 matches the advertisement template 2 shown in (3) in Figure 1B for the advertisement requester 2. In the advertisement view corresponding to the advertisement template 2, the picture information of the product is on the left and the text information is on the right. It can be seen that for the same advertisement, SSP300 may match different advertisement templates for different advertisement requesters, so the interface layout of the advertisement view presented by different advertisement requesters for the same advertisement is different.
  • the advertisement requester's information such as APP information, user portrait, etc.
  • FIG. 1C it is a schematic diagram of another interface for advertisers or agents to log in to the advertising exchange platform to place advertisements.
  • advertisers or agencies can enter a collection of resources for advertising, such as image addresses, video addresses, and animation addresses. Otherwise the same as the previous example.
  • SSP300 matches the corresponding advertisement template for the advertisement requester based on the advertisement requester's information (such as APP information, user portrait, etc.).
  • the SSP 300 matches the advertising template 3 shown in (2) in Figure 1C for the advertising requester 1.
  • the advertising view corresponding to the advertising template 3 includes text information and pictures of the product.
  • SSP300 matches the advertising template 4 shown in (3) in Figure 1C for the advertising requester 2.
  • the advertising view corresponding to the advertising template 4 includes the text of the product. text messages and videos.
  • the SSP 300 matches the advertisement template 5 shown in (4) in Figure 1C for the advertisement requester 3.
  • the advertisement view corresponding to the advertisement template 5 includes text information and animations of the product. It can be seen that for the same advertisement, the SSP300 may match different advertisement templates for different advertisement requesters, so the advertisement views presented by different advertisement requesters for the same advertisement contain different interface elements.
  • the terminal 100 has an APP installed on it, and the APP is integrated with an advertising SDK.
  • the APP can request advertisements from the advertising trading platform 200 through the advertising SDK.
  • the advertising trading platform 200 can obtain corresponding advertising data from the DSP 400 according to the request, and match the advertising template corresponding to the terminal 100 from the SSP 300 .
  • the advertising trading platform 200 returns advertising data and recommended advertising templates to the terminal 100 .
  • the terminal 100 displays the advertisement data in the form of an advertisement view according to the recommended advertisement template information.
  • the advertising SDK of the terminal 100 includes a rendering engine, which can be used to call the native rendering system of the terminal 100 for rendering according to the advertising template and present the received advertising data.
  • the advertising view rendered can be kept consistent with the original page of the APP, thus avoiding the user's visual abruptness due to inconsistency in style, tone, etc. between the advertising view and the original page of the APP. .
  • the advertising view rendered by calling the native rendering system of the terminal 100 can have richer interface controls and more powerful interface capabilities.
  • the advertising view can provide richer interface controls and interface capabilities. Interface interaction mode, advertising view can have richer visual presentation effects, such as 3D visual effects, etc.
  • the advertising SDK of the terminal 100 may first request the template recommended this time from the SSP 300 .
  • the “rendering engine” in this article is a name provided by this application to facilitate the description of the solution. In some examples, it cannot be used as a functional limitation of the solution of this application.
  • the developer of the advertising SDK can release The new version of the rendering engine is sent to the application market server 500, and the terminal 100 can obtain the new version of the rendering engine from the application market server 500 through dynamic loading.
  • the terminal 100 does not need to update the entire advertising SDK, nor does it need to update the APP integrating the advertising SDK.
  • the advertising data and advertising templates are decoupled, and the corresponding advertising template is matched for the advertising requester (such as the terminal 100).
  • the terminal 100 finally presents the advertising data according to the recommended advertising template, that is, Draw the ad view.
  • the developer of the advertising SDK can update the appearance of the advertisement finally presented to the user and the interaction method with the user by updating the advertisement template.
  • the terminal 100 can directly download the updated advertisement template from the SSP300. That’s it, there’s no need to update the advertising SDK, or update the APP that integrates the advertising SDK.
  • the terminal 100 can also obtain a new version of the rendering engine from the application market through dynamic loading. There is still no need to update the entire advertising SDK, nor does it need to update the APP that integrates the advertising SDK.
  • the advertising SDK update method provided by the embodiment of this application does not require the terminal 100 to update the APP integrated with the advertising SDK.
  • SSP300 can match different advertising templates for different advertising requesters based on the relevant information of the advertising requesting party (such as the APP of the advertising request, the user portrait of the advertising requesting party, etc.), so even for the same advertising data It can also provide users with personalized advertising effects for thousands of people.
  • the terminal 100 in the embodiment of the present application can be, for example, a mobile phone, a tablet computer, a personal computer (PC), a personal digital assistant (PDA), a smart watch, a netbook, a wearable terminal, or an augmented reality device.
  • a mobile phone a tablet computer
  • PC personal computer
  • PDA personal digital assistant
  • smart watch a netbook
  • a wearable terminal or an augmented reality device.
  • Technology augmented reality, AR
  • VR virtual reality
  • vehicle-mounted equipment smart screens, smart cars, smart speakers, etc.
  • smart screens smart screens
  • smart cars smart speakers
  • FIG. 2 shows a schematic structural diagram 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 (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, Mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone interface 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, display screen 194, and user Identification module (subscriber identification module, SIM) card interface 195, etc.
  • a processor 110 an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, Mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone interface 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, display screen
  • 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 light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, and ambient light. Sensor 180L, bone conduction sensor 180M, etc.
  • the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the terminal 100.
  • the terminal 100 may include more or less components than shown in the figures, or some components may be combined, some components may be separated, or some components may be arranged differently.
  • the components illustrated may be implemented in hardware, software, or a combination of software and hardware.
  • the processor 110 may include one or more processing units.
  • the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processing unit (GPU), and an image signal processor. (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural network processor (neural-network processing unit, NPU), etc.
  • application processor application processor, AP
  • modem processor graphics processing unit
  • GPU graphics processing unit
  • image signal processor image signal processor
  • ISP image signal processor
  • controller video codec
  • digital signal processor digital signal processor
  • DSP digital signal processor
  • baseband processor baseband processor
  • neural network processor neural-network processing unit
  • the controller can generate operation control signals based on the instruction operation code and timing signals to complete the control of fetching and executing instructions.
  • the processor 110 may also be provided with a memory for storing instructions and data.
  • the memory in processor 110 is cache memory. This memory may hold instructions or data that have been recently used or recycled by processor 110 . If the processor 110 needs to use the instructions or data again, it can be called directly from the memory. Repeated access is avoided and the waiting time of the processor 110 is reduced, thus improving the efficiency of the system.
  • processor 110 may include one or more interfaces.
  • Interfaces may include integrated circuit (inter-integrated circuit, I2C) interface, integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, pulse code modulation (pulse code modulation, PCM) interface, universal asynchronous receiver and transmitter (universal asynchronous receiver/transmitter (UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and /or universal serial bus (USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • UART universal asynchronous receiver and transmitter
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB universal serial bus
  • the interface connection relationships between the modules illustrated in the embodiment of the present invention are only schematic illustrations and do not constitute a structural limitation on the terminal 100 .
  • the terminal 100 may also adopt different interface connection methods in the above embodiments, or a combination of multiple interface connection methods.
  • the charging management module 140 is used to receive charging input from the charger.
  • the charger can be a wireless charger or a wired charger.
  • the charging management module 140 may receive charging input from the wired charger through the USB interface 130 .
  • the charging management module 140 may receive wireless charging input through the wireless charging coil of the terminal 100 . While charging the battery 142, the charging management module 140 can also provide power to the terminal through the power management module 141.
  • the power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110.
  • the power management module 141 receives input from the battery 142 and/or the charging management module 140, and supplies power to the processor 110, the internal memory 121, the display screen 194, the camera 193, the wireless communication module 160, and the like.
  • the power management module 141 can also be used to monitor battery capacity, battery cycle times, battery health status (leakage, impedance) and other parameters.
  • the power management module 141 may also be provided in the processor 110 .
  • the power management module 141 and the charging management module 140 may also be provided in the same device.
  • the wireless communication function of the terminal 100 can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor and the baseband processor.
  • Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in terminal 100 may be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
  • Antenna 1 can be reused as a diversity antenna for a wireless LAN. In other embodiments, antennas may be used in conjunction with tuning switches.
  • the mobile communication module 150 can provide wireless communication solutions including 2G/3G/4G/5G applied to the terminal 100.
  • the mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc.
  • the mobile communication module 150 can receive electromagnetic waves through the antenna 1, perform filtering, amplification and other processing on the received electromagnetic waves, and transmit them to the modem processor for demodulation.
  • the mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves through the antenna 1 for radiation.
  • at least part of the functional modules of the mobile communication module 150 may be disposed in the processor 110 .
  • at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 may be provided in the same device.
  • a modem processor may include a modulator and a demodulator.
  • the modulator is used to modulate the low-frequency baseband signal to be sent into a medium-high frequency signal.
  • the demodulator is used to demodulate 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 application processor outputs sound signals through audio devices (not limited to speaker 170A, receiver 170B, etc.), or displays images or videos through display screen 194.
  • the modem processor may be a stand-alone device.
  • the modem processor may be independent of the processor 110 and may be provided in the same device as the mobile communication module 150 or other functional modules.
  • the wireless communication module 160 can provide applications on the terminal 100 including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) network), Bluetooth (bluetooth, BT), and global navigation satellite system. (global navigation satellite system, GNSS), frequency modulation (FM), near field communication technology (near field communication, NFC), infrared technology (infrared, IR) and other wireless communication solutions.
  • WLAN wireless local area networks
  • BT Bluetooth
  • GNSS global navigation satellite system
  • FM frequency modulation
  • NFC near field communication technology
  • infrared technology infrared, IR
  • the wireless communication module 160 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 160 receives electromagnetic waves via the antenna 2 , frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110 .
  • the wireless communication module 160 can also receive the signal to be sent from the processor 110, frequency modulate it, amplify it, and convert it into electromagnetic waves through the antenna 2 for radiation
  • the antenna 1 of the terminal 100 is coupled to the mobile communication module 150, and the antenna 2 is coupled to the wireless communication module 160, so that the terminal 100 can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband 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 technology, etc.
  • the GNSS may include global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (quasi) -zenith satellite system (QZSS) and/or satellite based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite based augmentation systems
  • the terminal 100 implements the display function through the GPU, the display screen 194, and the application processor.
  • the GPU is an image processing microprocessor and is connected to the display screen 194 and the application processor. GPUs are 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 alter display information.
  • the display screen 194 is used to display images, videos, etc.
  • Display 194 includes a display panel.
  • the display panel can use a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active matrix organic light emitting diode or an active matrix organic light emitting diode (active-matrix organic light emitting diode).
  • LCD liquid crystal display
  • OLED organic light-emitting diode
  • AMOLED organic light-emitting diode
  • FLED flexible light-emitting diode
  • Miniled MicroLed, Micro-oLed, quantum dot light emitting diode (QLED), etc.
  • the terminal 100 may include 1 or N display screens 194, where N is a positive integer greater than 1.
  • the terminal 100 can implement the shooting function through the ISP, camera 193, video codec, GPU, display screen 194, application processor, etc.
  • the ISP is used to process the data fed back by the camera 193. For example, when taking a photo, the shutter is opened, the light is transmitted to the camera sensor through the lens, the optical signal is converted into an electrical signal, and the camera sensor passes the electrical signal to the ISP for processing, and converts it into an image visible to the naked eye. ISP can also perform algorithm optimization on image noise, brightness, and skin color. ISP can also optimize the exposure, color temperature and other parameters of the shooting scene. In some embodiments, the ISP may be provided in the camera 193.
  • Camera 193 is used to capture still images or video.
  • the object passes through the lens to produce an optical image that is projected onto the photosensitive element.
  • the photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor.
  • CMOS complementary metal-oxide-semiconductor
  • the photosensitive element converts the optical signal into an electrical signal, and then passes the electrical signal to the ISP to convert it into a digital image signal.
  • ISP outputs digital image signals to DSP for processing.
  • DSP converts digital image signals into standard RGB, YUV and other format image signals.
  • the terminal 100 may include 1 or N cameras 193, where N is a positive integer greater than 1.
  • Digital signal processors are used to process digital signals. In addition to digital image signals, they can also process other digital signals. For example, when the terminal 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy.
  • Video codecs are used to compress or decompress digital video.
  • Terminal 100 may support one or more video codecs.
  • the terminal 100 can play or record videos in multiple encoding formats, such as moving picture experts group (MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
  • MPEG moving picture experts group
  • NPU is a neural-network (NN) computing processor. It draws on the structure of biological neural networks, such as The human brain transmits patterns between neurons, processes input information quickly, and can continuously learn by itself.
  • the NPU can realize intelligent cognitive applications of the terminal 100, such as image recognition, face recognition, speech recognition, text understanding, etc.
  • the external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the terminal 100.
  • the external memory card communicates with the processor 110 through the external memory interface 120 to implement the data storage function. Such as saving music, videos, etc. files in external memory card.
  • Internal memory 121 may be used to store computer executable program code, which includes instructions.
  • the internal memory 121 may include a program storage area and a data storage area.
  • the stored program area can store an operating system, at least one application program required for a function (such as a sound playback function, an image playback function, etc.).
  • the storage data area may store data created during use of the terminal 100 (such as audio data, phone book, etc.).
  • the internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc.
  • the processor 110 executes various functional applications and data processing of the terminal 100 by executing instructions stored in the internal memory 121 and/or instructions stored in a memory provided in the processor.
  • the terminal 100 can implement audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone interface 170D, and the application processor. Such as music playback, recording, etc.
  • the audio module 170 is used to convert digital audio information into analog audio signal output, and is also used to convert analog audio input into digital audio signals. Audio module 170 may also be used to encode and decode audio signals. In some embodiments, the audio module 170 may be provided in the processor 110 , or some functional modules of the audio module 170 may be provided in the processor 110 .
  • Speaker 170A also called “speaker” is used to convert audio electrical signals into sound signals.
  • the terminal 100 can listen to music through the speaker 170A, or listen to a hands-free call.
  • Receiver 170B also called “earpiece” is used to convert audio electrical signals into sound signals.
  • the voice can be heard by bringing the receiver 170B close to the human ear.
  • Microphone 170C also called “microphone” or “microphone” is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak close to the microphone 170C with the human mouth and input the 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, which in addition to collecting sound signals, may also implement a noise reduction function. In other embodiments, the terminal 100 can also be equipped with three, four or more microphones 170C to collect sound signals, reduce noise, identify sound sources, and implement directional recording functions, etc.
  • the headphone interface 170D is used to connect wired headphones.
  • the headphone interface 170D can be a USB interface 130, or a 3.5mm open mobile terminal platform (OMTP) standard interface, or a cellular telecommunications industry association of the USA (CTIA) standard interface.
  • OMTP open mobile terminal platform
  • CTIA cellular telecommunications industry association of the USA
  • the buttons 190 include a power button, a volume button, etc.
  • Key 190 may be a mechanical key. It can also be a touch button.
  • the terminal 100 may receive key input and generate key signal input related to user settings and function control of the terminal 100.
  • the motor 191 can generate vibration prompts.
  • the motor 191 can be used for vibration prompts for incoming calls and can also be used for touch vibration feedback.
  • touch operations for different applications can correspond to different vibration feedback effects.
  • the motor 191 can also respond to different vibration feedback effects for touch operations in different areas of the display screen 194 .
  • Different application scenarios such as time reminders, receiving information, alarm clocks, games, etc.
  • the touch vibration feedback effect can also be customized.
  • the indicator 192 may be an indicator light, which may be used to indicate charging status, power changes, or may be used to indicate messages, missed calls, notifications, etc.
  • the SIM card interface 195 is used to connect a SIM card.
  • the SIM card can be connected to or separated from the terminal 100 by inserting it into the SIM card interface 195 or pulling it out from the SIM card interface 195 .
  • the terminal 100 can support 1 or N SIM card interfaces, where N is a positive integer greater than 1.
  • SIM card interface 195 can support Nano SIM card, Micro SIM card, SIM card, etc. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the plurality of cards may be the same or different.
  • the SIM card interface 195 is also compatible with different types of SIM cards.
  • the SIM card interface 195 is also compatible with external memory cards.
  • the terminal 100 interacts with the network through the SIM card to implement functions such as calls and data communications.
  • the terminal 100 adopts eSIM, that is, an embedded SIM card.
  • the eSIM card can be embedded in the terminal 100 and cannot be separated from the terminal 100.
  • the software system of the terminal 100 may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
  • This embodiment of the present invention takes the Android system with a layered architecture as an example to illustrate the software structure of the terminal 100 .
  • Figure 3 is a software structure block diagram of the terminal 100 according to the embodiment of the present invention.
  • the layered architecture divides the software into several layers, and each layer has clear roles and division of labor.
  • the layers communicate through software interfaces.
  • the Android system is divided into four layers, from top to bottom: application layer, application framework layer, Android runtime and system libraries, and kernel layer.
  • the application layer can include a series of application packages.
  • the application package can include camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message and other applications.
  • the application layer includes a first APP, which includes an advertising SDK, and the first APP obtains advertisements or presents advertisements through the advertising SDK.
  • the first APP may be, for example, a video APP, a news APP, a game APP, a social APP, a music APP, etc.
  • the first APP includes the advertising SDK and the business functions of the first APP (such as the video playback function of the video APP, the news browsing function of the news APP, the game function of the game APP, etc.).
  • the advertising SDK includes an advertising service module, a dynamic loading module, a template management module and a rendering engine.
  • the advertising service module includes advertising business logic, such as requesting advertisements from the ADX platform 200, receiving advertising data returned by the ADX platform 200 and recommended template information, etc.
  • the dynamic loading module is used by the advertising SDK to dynamically load new versions of the rendering engine.
  • the template management module is used to download advertising modules from SSP300 and manage downloaded advertising templates.
  • the rendering engine is used to parse the advertising template received by the advertising service module into the interface description and interaction information corresponding to the native rendering system of the terminal 100, and call the native rendering system of the terminal 100 to draw the advertising view; parse the advertising data received by the advertising service module, and based on The data corresponding to the data structure defined in the advertising template is filled into the corresponding position in the advertising view, and the final advertising view presented to the user is generated, etc.
  • the application layer also includes mobile services, such as Huawei mobile service (HUAWEI mobile service, HMS) core service, which is used to obtain the latest rendering engine in the advertising SDK from the application market APP (not shown in Figure 3). Version.
  • the dynamic loading module in the advertising SDK can dynamically load the latest version of the rendering engine code through mobile services. In this way, when the rendering engine is updated, the terminal 100 can obtain the latest version of the rendering engine and use the latest functions of the rendering engine without updating the first APP.
  • the application framework layer provides an application programming interface (API) and programming framework for applications in the application layer.
  • API application programming interface
  • the application framework layer includes some predefined functions.
  • the application framework layer can include window manager, content provider, view system, phone manager, resource manager, notification manager, etc.
  • a window manager is used to manage window programs.
  • the window manager can obtain the display size, determine whether there is a status bar, lock the screen, capture the screen, etc.
  • Content providers are used to store and retrieve data and make this data accessible to applications.
  • Said data can include videos, images, audio, calls made and received, browsing history and bookmarks, phone books, etc.
  • the view system includes visual controls, such as controls that display text, controls that display pictures, etc.
  • a view system can be used to build applications.
  • the display interface can be composed of one or more views.
  • a display interface including a text message notification icon may include a view for displaying text and a view for displaying pictures.
  • the phone manager is used to provide communication functions of the terminal 100. For example, call status management (including connected, hung up, etc.).
  • the resource manager provides various resources to applications, such as localized strings, icons, pictures, layout files, video files, etc.
  • the notification manager allows applications to display notification information in the status bar, which can be used to convey notification-type messages and can automatically disappear after a short stay without user interaction.
  • the notification manager is used to notify download completion, message reminders, etc.
  • the notification manager can also be notifications that appear in the status bar at the top of the system in the form of charts or scroll bar text, such as notifications for applications running in the background, or notifications that appear on the screen in the form of conversation windows. For example, text information is prompted in the status bar, a prompt sound is emitted, the terminal vibrates, and the indicator light flashes, etc.
  • Android Runtime includes core libraries and virtual machines. Android runtime is responsible for the scheduling and management of the Android system.
  • the core library contains two parts: one is the functional functions that need to be called by the Java language, and the other is the core library of Android.
  • the application layer and application framework layer run in virtual machines.
  • the virtual machine combines the application layer and application framework layer java files are executed as binary files.
  • the virtual machine is used to perform object life cycle management, stack management, thread management, security and exception management, and garbage collection and other functions.
  • System libraries can include multiple functional modules. For example: surface manager (surface manager), media libraries (Media Libraries), 3D graphics processing libraries (for example: OpenGL ES), 2D graphics engines (for example: SGL), etc.
  • the surface manager is used to manage the display subsystem and provides the fusion of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of a variety of commonly used audio and video formats, as well as static image files, etc.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to implement 3D graphics drawing, image rendering, composition, and layer processing.
  • 2D Graphics Engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer contains at least display driver, camera driver, audio driver, and sensor driver.
  • FIG. 5 it is a schematic structural diagram of an SSP300 provided by an embodiment of the present application.
  • the SSP 300 includes at least one processor 210, at least one memory 220, and at least one communication interface 230.
  • SSP300 may also include output devices and input devices, which are not shown in the figure.
  • the processor 210, the memory 220 and the communication interface 230 are connected through a bus.
  • the processor 210 may be a general central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more processors used to control the execution of the program of the present application. integrated circuit.
  • the processor 210 may also include multiple CPUs, and the processor 210 may be a single-CPU processor or a multi-CPU processor.
  • a processor here may refer to one or more devices, circuits, or processing cores for processing data (eg, computer program instructions).
  • Memory 220 may be 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 that can store information and instructions.
  • a dynamic storage device can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disk storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), disk storage media or other magnetic storage devices, or can be used to carry or store desired program code in the form of instructions or data structures and can be used by a computer Any other medium for access, but not limited to this.
  • EEPROM electrically erasable programmable read-only memory
  • CD-ROM compact disc read-only memory
  • optical disc storage including compressed optical discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.
  • disk storage media or other magnetic storage devices or can be used
  • the memory 220 may exist independently and be connected to the processor 210 through a bus. Memory 220 may also be integrated with processor 210. Among them, the memory 220 is used to store the application code for executing the solution of the present application, and the processor 210 controls the execution.
  • the memory 220 of the SSP 300 may be used to store a large number of advertising templates.
  • SSP300 can also be used to store recommendation algorithm models for advertising templates, etc.
  • the communication interface 230 can be used to communicate with other devices or communication networks, such as Ethernet, wireless local area networks (WLAN), etc.
  • WLAN wireless local area networks
  • the SSP 300 can interact with the terminal 100 through the communication interface 230, for example, send an advertisement template to the terminal 100, etc.
  • SSP 300 can also receive advertising templates produced or uploaded by advertising SDK developers or other developers through the communication interface 230 .
  • SSP 300 can also receive advertising template algorithms uploaded by advertising SDK developers or other developers through the communication interface 230 .
  • the SSP 300 can also receive the settings of the advertising template type and so on by the developer of the first APP through the communication interface 230 .
  • Output devices communicate with the processor and can display information in a variety of ways.
  • the output device may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector (projector), etc.
  • Input devices communicate with the processor and can receive user input in a variety of ways.
  • the input device may be a mouse, a keyboard, a touch screen device or a sensing device, etc.
  • the structures of the ADX platform 200, DSP 400 and application market server 500 shown in FIG. 1A can refer to the structure of the SSP 300 shown in FIG. 5 . It can be understood that the structures of the ADX platform 200, DSP400 and application market server 500 may have more or fewer components than the SSP300 in Figure 3, or some components may be combined, or some components may be split, or may be arranged differently. . This application places no special restrictions on the structures of SSP300, ADX platform 200, DSP400 and application market server 500.
  • the advertising SDK After the developer of the advertising SDK develops the advertising SDK, the advertising SDK includes a rendering engine, etc.
  • the advertising SDK can also include each initially designed advertising template.
  • the developer of the first APP integrates the advertising SDK, and then puts the developed first APP on the application market. Then, the terminal 100 can download and install the first APP through the application market, or the terminal 100 The manufacturer presets the first APP to the terminal 100.
  • the developer of the advertising SDK also uploads each designed advertising template to the advertising template warehouse of SSP300.
  • the advertising SDK will put the latest version of the rendering engine on the application market.
  • the developer of the advertising SDK updates the advertising template
  • he or she can create a new advertising template through the SSP300, or upload the prepared advertising template to the advertising template warehouse of the SSP300.
  • the SSP 300 can regularly push updated advertising templates to the first APP of the terminal 100.
  • the SSP 300 regularly sends update notifications to the first APP of the terminal 100, and the user can update them manually.
  • the advertisement template is automatically updated after the terminal 100 starts the first APP.
  • the first APP of the terminal 100 can actively request updated advertising templates, etc. from the SSP 300. For example, after launching the first APP, the terminal 100 actively requests the SSP 300 for an updated advertisement template.
  • the terminal 100 sends an advertisement request and receives the advertisement data and recommended template information returned by the ADX platform 200, it determines that there is no recommended template locally, and actively requests an updated advertisement template from the SSP 300 to obtain the recommended template.
  • the embodiment of the present application does not specifically limit the timing of the first APP of the terminal 100 to update the advertisement template.
  • the process of updating the advertising template by the terminal 100 is invisible to the user, thus avoiding disturbing the user and improving the user experience.
  • the new version of the rendering engine can be put on the application market.
  • developers can put a new version of the rendering engine on the application market in the form of a tool (kit) package.
  • the advertising SDK of the terminal 100 can obtain a new version of the rendering engine from the application market through dynamic loading. In this way, the terminal 100 can use the new functions of the new version of the rendering engine without updating the entire SDK or the first APP.
  • the advertising SDK can dynamically load a new version of the rendering engine through the mobile service of the terminal 100 system service.
  • the mobile service of the terminal 100 regularly interacts with the application market APP to check whether the version number of the local rendering engine is the latest version.
  • the terminal 100 automatically obtains the latest version of the rendering engine from the server 500 of the application market through the application market APP.
  • the advertising SDK can check with the mobile service whether the version number of the rendering engine in the advertising SDK is the latest version.
  • the advertising SDK obtains the latest version of the rendering engine from the mobile service.
  • the advertising SDK can also automatically obtain the latest version of the rendering engine from the server 500 of the application market through the application market APP.
  • the embodiment of this application does not specifically limit the implementation of the advertising SDK to dynamically load the latest version of the rendering engine.
  • the advertising SDK updates the advertising template or dynamically loads a new version of the rendering engine, the entire update efficiency is higher than the update efficiency of the terminal 100 updating the first APP in the prior art. Therefore, the advertising provided by the embodiment of the present application
  • the SDK update method greatly improves update efficiency.
  • the advertising SDK update method provided by the embodiment of the present application does not need to update the entire advertising SDK, nor does it need to update the first APP, which greatly simplifies the updating process of the advertising SDK and improves the update speed. efficiency.
  • FIG. 6 it is a schematic flow chart of a method for displaying advertisements provided by an embodiment of the present application.
  • the method includes:
  • the terminal 100 sends an advertisement request to the ADX platform 200.
  • the advertisement request includes one or more of the advertising space information (such as advertising space identification), the information of the first APP, and the information of the terminal 100 .
  • the advertising space information includes advertising space identification and/or advertising space type, etc.
  • the information of the first APP includes one or more of the package name, version number, signature, etc. of the first APP.
  • the information of the terminal 100 includes one or more of the terminal 100's Open Anonymous Device Identifier (OAID), model, system version number, device capabilities, etc.
  • OAID Open Anonymous Device Identifier
  • the main page of the first APP is displayed.
  • the first APP integrates Advertising SDK to ADX platform 200 sends an ad request.
  • the ad request carries ad slot information, such as ad slot identification, etc.
  • the terminal 100 automatically jumps to other pages of the first APP based on the user's operation, and the other pages include advertising spaces, the first APP sends an advertising request to the ADX platform 200 through its integrated advertising SDK.
  • the user's operations include, for example, a drag-and-drop operation performed by the user while browsing a news page or a webpage using the terminal 100 , or an operation of pausing playback performed by the user while watching a video on the terminal 100 , or a user's operation performed on the current page of the terminal 100 .
  • the first APP periodically sends advertising requests to the ADX platform 200 through its integrated advertising SDK to update the advertising content in the advertising slots on the page in real time.
  • the embodiment of the present application does not limit the timing and scenarios when the terminal 100 sends an advertisement request to the ADX platform 200 .
  • one or more advertising spaces may be included in one page of the first APP.
  • the ad slot information included in the ad request may also include one or more ad slot identifiers accordingly.
  • the advertising slot information in the advertisement request may be the identifier of the page and used to request advertising content corresponding to all the advertising slots in the page.
  • the first APP can call the advertisement requesting interface of the advertising SDK according to the advertising slot included in the page, such as the native advertising loader (INativeAdLoader), to obtain the advertisement. Then, the advertising SDK sends an advertising request to the ADX platform 200.
  • the following Table 1 exemplifies the interface description involved in the first APP calling the advertising SDK.
  • the following illustrates the format of an advertisement request sent by the terminal 100 to the ADX platform 200:
  • the advertisement request sent by the terminal 100 to the ADX platform 200 may include the information of the first APP, the device information of the terminal 100, the information of the advertising space, etc.
  • information about the advertisement templates cached locally in the terminal 100 may also be included.
  • the version number of the rendering engine in the terminal 100 may also be included.
  • the network information of the terminal 100 may also be included.
  • the ADX platform 200 After receiving the advertisement request from the terminal 100, the ADX platform 200 sends a request to obtain the advertisement to the DSP 400.
  • the ADX platform 200 performs the following steps according to the information carried in the request of the terminal 100 (such as application information of the first APP, device information of the terminal 100, network information, advertising space information, etc.) and corresponding advertising transaction rules (such as targeting Place policy, etc.), and sends a request to obtain advertisements to DSP400.
  • the information carried in the request of the terminal 100 such as application information of the first APP, device information of the terminal 100, network information, advertising space information, etc.
  • corresponding advertising transaction rules such as targeting Place policy, etc.
  • S603 and DSP400 return advertising data to the ADX platform 200.
  • the DSP 400 platform returns corresponding advertising data to the terminal according to the information carried in the request of the terminal 100 (such as application information of the first APP, device information of the terminal 100, network information, advertising space information, etc.).
  • the advertising data may include one or Content for multiple ads.
  • the request to obtain an advertisement includes an identification of an advertisement slot, and the advertisement data returned by the DSP 400 may include the content of one or more advertisements.
  • the advertising space on the page of the first APP can display multiple advertisements according to certain rotation rules.
  • the request for obtaining advertisements includes identifiers of multiple advertisement slots, and the advertisement data returned by DSP 400 may include the contents of multiple advertisements. It can be understood that each advertising slot can correspond to the content of one or more advertisements.
  • the ADX platform 200 returns advertising data to the terminal 100. After,
  • the ADX platform 200 sends a request to match the advertisement template to the SSP 300.
  • the request to match the advertising template includes advertising space information (such as advertising space identification) and/or information about the terminal 100 .
  • the ADX platform 200 may execute step S604 after receiving the advertising data returned by the DSP 400 (ie, step S603); it may also execute step S604 after receiving the advertisement request sent by the terminal 100 (ie, step S601). It is executed before step S603 or simultaneously with step S603, which is not specifically limited in the embodiment of this application.
  • the ADX platform 200 calls an interface matching the advertising template based on the information in the advertising request sent by the terminal 100 (such as application information of the first APP, device information of the terminal 100, network information, advertising space information, etc.), Send a request matching the advertisement template to SSP 300 (for example, more specifically, the recommendation algorithm model in SSP 300).
  • Table 2 exemplifies the interface description of the matching advertisement template called by the ADX platform 200.
  • the device information is the information of the terminal 100 .
  • S605 and SSP300 After S605 and SSP300 receive a request to match the advertising template from the ADX platform 200, they match the corresponding advertising template for the current advertising request of the terminal 100 according to the recommendation algorithm, and return the recommended advertising template (hereinafter referred to as the recommended template) to the ADX platform 200. logo.
  • SSP 300 after receiving a request to match the advertising template, SSP 300 (specifically, the recommendation algorithm model in SSP 300) searches for the user portrait of terminal 100 according to the identification of terminal 100 in the request, and searches for the user portrait of terminal 100 based on the user portrait of terminal 100.
  • user portraits include but are not limited to the user's preferences when watching advertisements (such as preferred picture types or video types), the duration of watching advertisements (such as the playback time of advertisement videos), and the interaction methods when watching advertisements (such as sliding operations, Click operation, shake, voice interaction), etc. For example, as shown in (1) in FIG.
  • the SSP 300 can recommend the corresponding advertisement template according to the user portrait of the terminal 100 .
  • the SSP 300 recommends the advertisement template 3 shown in (2) in Figure 1C to the terminal 100.
  • the advertisement view corresponding to the advertisement template 3 includes text information and picture information, and does not include video information and animation. Figure information.
  • the SSP 300 recommends the advertisement template 4 shown in (3) in Figure 1C to the terminal 100.
  • the advertisement view corresponding to the advertisement template 4 includes text information and video information, but does not include picture information and GIF information.
  • the ADX platform 200 returns advertising data and recommended template information to the terminal 100.
  • the ADX platform 200 can return advertising data and recommendation template information (such as the identification of the recommendation module) to the terminal 100 at once, or it can first return the advertising data to the terminal 100 after the ADX platform 200 receives the advertising data returned by the DSP 400. Advertising data; after receiving the information of the recommended template from the SSP 300, the information of the recommended template is returned to the terminal 100. Alternatively, the ADX platform 200 first returns the recommended template information to the terminal 100, and then returns the advertising data.
  • advertising data and recommendation template information such as the identification of the recommendation module
  • the first APP of the terminal 100 can obtain the status of the advertising SDK's advertising request by calling the advertising request status callback interface (NativeAdListener) of the advertising SDK.
  • the advertising request status callback interface (NativeAdListener) of the advertising SDK. Table 3 below illustrates the advertising request of the advertising SDK. Please provide status callback interface description.
  • the native advertisement list returned by this request includes the advertisement data returned by the ADX platform 200 to the terminal 100, including the content of one or more advertisements.
  • the following exemplifies the format of advertising data returned by the ADX platform 200 to the terminal 100:
  • the returned advertising data includes information such as the type of returned advertisement, the content of the advertisement, the identification of the recommended advertising template, the identification of the advertising task, and the advertising slot.
  • the advertisement template recommended in the advertisement data returned at this time may be any of the advertisement templates cached locally by the terminal 100 , or may not be among the advertisement templates cached locally by the terminal 100 .
  • the terminal 100 searches whether there is a template file of the recommended template locally based on the recommended template information.
  • the first APP can use the module management module in the advertising SDK to search whether the template file of the recommended template is stored locally in the terminal 100 based on the information of the recommended template.
  • the advertising SDK calls the rendering engine to parse the template file of the recommended template, binds the corresponding data structure in the template file to the corresponding data in the advertising data, and calls the native function of the terminal 100
  • the rendering system draws the ad view and presents the ad to the user. That is, step S610a is executed.
  • the terminal 100 executes the following step S608.
  • the first APP of the terminal 100 can query, add, delete, and update the template files of the advertising templates stored in the template management module of the advertising SDK by calling the advertising template management interface provided by the advertising SDK, as shown in Table 4 below.
  • the interface description of the advertising template management provided by the advertising SDK is given as an example.
  • the template information includes but is not limited to template identification, template information address, template version, data structure included in the template, etc.
  • Table 5 exemplifies the content of the template information.
  • the terminal 100 If the terminal 100 does not find the template file of the recommended template, it requests the SSP 300 to download the template file of the recommended template.
  • the terminal 100 may request to download the template file of the recommended template from the advertisement template warehouse of the SSP 300 .
  • S609 and SSP300 return the template file of the recommended template to the terminal 100.
  • the template file includes the interface layout of the advertising view, interactive information, animation and other content.
  • the template file may be a text file.
  • the template file for an ad template can include one or more files.
  • the terminal 100 detects whether the version of the rendering engine in the advertising SDK meets the requirements.
  • the terminal 100 before rendering the advertisement view according to the recommended template, the terminal 100 (more specifically, the first APP) first checks whether the version of the rendering engine in the advertising SDK meets the rendering requirements, that is, it meets the requirements for rendering according to the recommended template. .
  • the template file of the recommended template also includes the minimum version number of the required rendering engine. Then, when the terminal 100 renders using the recommended template, it first detects whether the version number of the rendering engine in the advertising SDK meets the minimum version number required by the recommended template. If satisfied, the terminal 100 calls the rendering engine of the advertising SDK to draw the advertising view, that is, executes the following step S615. If not, the terminal 100 needs to load the latest version of the rendering engine first, that is, perform the display step S611.
  • the terminal 100 requests the application market server 500 to load the latest version of the rendering engine.
  • this step S611 includes step S611a and step S611b.
  • the first APP of the terminal 100 carries the version number of the rendering engine in the advertising SDK and requests the mobile service of the terminal 100 to load the latest version of the rendering engine.
  • the mobile service requests the application market to update the latest version of the rendering engine based on the version number of the rendering engine in the advertising SDK.
  • the rendering engine may be a tool package.
  • the first APP of the terminal 100 can query the version of the rendering engine in the advertising SDK by calling the interface provided by the advertising SDK.
  • the following Table 6 exemplifies the interface description of the query rendering engine version provided by the advertising SDK.
  • the terminal 100 requests the SSP 300 to download the latest version of the rendering engine.
  • S613 and SSP300 return the latest version of the rendering engine to the terminal 100.
  • the terminal 100 dynamically loads the latest version of the rendering engine.
  • step S614 includes step S614a and step S614b.
  • the application market of the terminal 100 sends the latest version of the rendering engine to the mobile service.
  • the advertising SDK of the first APP (for example, more specifically, the dynamic loading module in the advertising SDK) obtains the latest version of the rendering engine from the mobile service in a dynamic loading manner.
  • the advertising SDK uses DexLoader to load the latest version of the rendering engine kit package in the mobile service, and then loads the code in the kit package through reflection, so that when the advertising SDK runs, it can execute the kit package in the mobile service. code so that the rendering engine in the advertising SDK can achieve the performance of the new version.
  • the first APP can dynamically load the latest version of the rendering engine in the mobile service by calling the dynamic loading interface provided by the advertising SDK.
  • Table 7 below exemplifies the description of the dynamic loading interface provided by the advertising SDK.
  • the terminal 100 draws an advertisement view based on the advertisement data and the recommended template.
  • the rendering engine in the first APP can parse the interface layout, interactive information, animation, etc. in the recommended template, and convert the recommended template into an interface of the native rendering system of the terminal 100 (such as the native rendering system of the Android system). Description files and interactive files, etc.
  • the rendering engine also parses the advertising data returned from the DSP300 and will match it with the advertising data defined in the recommendation template. The content corresponding to the data structure is filled into the corresponding position in the advertising view, and finally a complete advertising view is generated.
  • the native rendering system of the terminal 100 itself has powerful viewing capabilities, for example, it can draw various types of controls, and various types of controls have different functions.
  • the advertising SDK calls the native rendering system of the terminal 100 through the rendering engine to render and draw the advertising view. Therefore, the advertising SDK can draw more types of controls, and various types of controls also have different functions, so that The advertising view presented to users has a richer type of controls, and the functions that each control can implement are also very rich, which greatly improves the visual experience and usage experience of advertising.
  • advertising views with richer interactive methods can be drawn, and the advertising views can also present more visual effects, such as 3D effects.
  • the first APP can render the advertising view by calling the interface of the rendering engine provided by the advertising SDK.
  • Table 8 below exemplifies the interface description of the rendering engine provided by the advertising SDK.
  • the advertisement display method can decouple the advertisement data and the advertisement template, and match the corresponding advertisement template for the advertisement requester (such as the terminal 100).
  • the terminal 100 finally uses the recommended advertisement template. Render the ad data, i.e. draw the ad view.
  • the developer of the advertising SDK can update the appearance of the advertisement finally presented to the user and the interaction method with the user by updating the advertisement template.
  • the terminal 100 can directly download the updated advertisement template from the SSP300. That’s it, there’s no need to update the advertising SDK, or update the APP that integrates the advertising SDK.
  • the terminal 100 can also obtain a new version of the rendering engine from the application market through dynamic loading. There is still no need to update the entire advertising SDK, nor does it need to update the APP that integrates the advertising SDK.
  • the advertisement display method provided by the embodiment of the present application can also match the corresponding advertisement template for the advertisement requester (such as the terminal 100) according to the information (such as the user portrait) of the advertisement requester, it is possible to provide personalized services for different users.
  • the advertising presentation effect is the same, that is, the same advertisement (for example, the same advertising logo) can also achieve the advertising presentation effect of thousands of people, greatly improving the visual experience and user experience of the advertisement.
  • the method flow may also include the following steps S616 and S617.
  • the terminal 100 records the user behavior related to the advertisement view and reports it to the SSP 300.
  • the user behavior related to the advertising view includes but is not limited to the user's interaction behavior with the advertising view, the user's viewing behavior of the advertising view, etc.
  • S617 and SSP300 update the user portrait of the terminal 100 based on the user behavior reported by the terminal 100.
  • the user portrait can include the user's operating habits. For example, the duration of watching advertising videos does not exceed the preset duration (for example, 10 seconds). The user is accustomed to using the upward swipe operation to close the advertising view. The user is accustomed to using the shake method to open the advertising view. wait.
  • the preset duration for example, 10 seconds
  • the terminal 100 can periodically or in real time report the user behavior related to the advertising view, and the SSP 300 can update the user portrait of the terminal 100 based on the reported user behavior related to the advertising view, so that subsequent user portraits can be updated based on the updated user portrait. Match a more appropriate advertisement template to the terminal 100.
  • advertisers can only develop the content of the advertisement (such as text, pictures, videos, etc.) and the logic of the advertisement when placing advertisements, and do not need to design the appearance of the advertisement when it is presented to users. Including the way the advertisement is laid out and how it interacts with users. Among them, the appearance of the advertisement when presented to the user (that is, the presented advertisement view) can be determined by the advertisement template designed by the advertisement SDK developer and the user portrait of the advertisement requester.
  • FIG. 7 it is a schematic flow chart of another advertisement display method provided by an embodiment of the present application.
  • the method includes:
  • the application market APP of the terminal 100 obtains the new version of the rendering engine from the server 500 of the application market.
  • the developer of the advertising SDK can release a new version. the rendering engine to the application market server 500. Then, the application market APP of the terminal 100 can obtain the listing information of the latest version of the rendering engine from the server 500 of the application market.
  • the mobile service of the terminal 100 automatically updates the new version of the rendering engine.
  • the mobile service of the terminal 100 regularly (according to a preset time period) compares the version number of its existing rendering engine with the version number of the rendering engine listed in the application market APP. After checking that a new version of the rendering engine is available on the application market APP, the mobile service automatically downloads the new version of the rendering engine from the application server 500 through the application market APP.
  • the advertising SDK is initialized.
  • the advertising SDK When the terminal 100 starts the first APP, the advertising SDK is initialized, it will carry the version number of its own rendering engine and query whether there is a new version of the rendering engine from the mobile service. If there is a mobile service with a new version of the rendering engine, the following step S704 is performed.
  • the first APP of the terminal 100 can also periodically (according to a preset time period) carry the version number of its own rendering engine and query whether there is a new version of the rendering engine from the mobile service. If there is a mobile service with a new version of the rendering engine.
  • the embodiments of this application are not specifically limited.
  • the advertising SDK of the terminal 100 dynamically loads a new version of the rendering engine from the mobile service.
  • the advertising SDK of the terminal 100 obtains the updated advertising template from the SSP 300.
  • the advertising SDK of the terminal 100 can also carry the version number of the advertising template and query the SSP 300 whether there is a new version of the advertising template. If so, the terminal 100 requests to download the updated advertisement template. It is understandable that the file of the advertisement template is smaller, the terminal 100 downloads and updates the advertisement template at a faster rate, the user is not aware of it, and it does not disturb the user's normal use of the first APP.
  • the terminal 100 may not perform step S705 first.
  • the terminal 100 may first check whether the local advertisement template is the latest version of the advertisement template. If it is the latest version, there is no need to perform this step and step S706 is performed directly. If it is not the latest version, perform this step again.
  • the terminal 100 may directly perform step S706 without checking whether the local advertising template is the latest version of the advertising template. Subsequently, after performing step S711, when it is determined that the recommended template is not stored locally in the terminal 100, the template file of the recommended template is downloaded from the SSP 300. You can check the steps S608 and S609 in Figure 6 above. Alternatively, when it is determined that the terminal 100 does not store recommended templates locally, the terminal 100 directly requests to download all updated advertising templates from the SSP 300, and all updated advertising templates include recommended templates.
  • the embodiments of this application are not specifically limited.
  • the first APP of the terminal 100 can also carry the version number of the advertising template periodically (according to a preset time period) and query the SSP 300 whether there is a new version of the advertising template.
  • the embodiments of this application are not specifically limited.
  • the advertising SDK of the terminal 100 sends an advertising request to the ADX platform 200.
  • S707 and ADX platform 200 obtain advertisements from DSP400.
  • S708 and DSP400 return advertising data to the ADX platform 200.
  • S709 and ADX platform 200 request recommended templates from SSP300.
  • S710 and SSP300 return the recommended template information to the ADX platform 200.
  • the ADX platform 200 returns the recommended template information and advertising data to the terminal 100.
  • the terminal 100 draws an advertisement view according to the recommended advertisement template and advertisement data.
  • steps S706 to step S712 reference may be made to the relevant content of the embodiment described in FIG. 6 and will not be described again here.
  • the developer of the advertising SDK can separately update the rendering engine in the advertising SDK in the form of a kit package, and put the new version of the rendering engine on the application market.
  • the first APP in the terminal 100 (for example, more specifically, the advertising SDK in the first APP) automatically uses dynamic loading to load the execution code of the new version of the rendering engine to implement the update of the advertising SDK.
  • the developer of the first APP does not need to re-develop a new version of the first APP for the new functions of the new version of the rendering engine, and the terminal 100 does not need to update the first APP, nor does it need to update the entire advertising SDK, to implement the new features of the new version of the rendering engine. Function.
  • the chip system includes at least one processor 1101 and at least one interface circuit 1102 .
  • the processor 1101 and the interface circuit 1102 may be interconnected by wires.
  • interface circuitry 1102 may be used to receive signals from other devices, such as the memory of terminal 100.
  • interface circuit 1102 may be used to send signals to other devices (eg, processor 1101).
  • the interface circuit 1102 can read instructions stored in the memory and send the instructions to the processor 1101.
  • the terminal can be caused to perform various steps performed by the terminal 100 (such as a mobile phone) in the above embodiment.
  • the chip system may also include other discrete devices, which are not specifically limited in the embodiments of this application.
  • An embodiment of the present application also provides a device, which is included in a terminal and has the function of realizing the terminal behavior in any of the methods in the above embodiments.
  • This function can be implemented by hardware, or it can be implemented by hardware executing corresponding software.
  • hardware or The software includes at least one module or unit corresponding to the above functions. For example, detection module or unit, display module or unit, determination module or unit, and calculation module or unit, etc.
  • Embodiments of the present application also provide a computer storage medium that includes computer instructions.
  • the computer instructions When the computer instructions are run on a terminal, the terminal is caused to perform any of the methods in the above embodiments.
  • Embodiments of the present application also provide a computer program product.
  • the computer program product When the computer program product is run on a computer, it causes the computer to perform any of the methods in the above embodiments.
  • Embodiments of the present application also provide a graphical user interface on a terminal.
  • the terminal has a display screen, a camera, a memory, and one or more processors.
  • the one or more processors are used to execute data stored in the memory.
  • One or more computer programs, the graphical user interface includes a graphical user interface displayed when the terminal executes any of the methods in the above embodiments.
  • the above-mentioned terminals include hardware structures and/or software modules corresponding to each function.
  • Persons skilled in the art should easily realize that, in conjunction with the units and algorithm steps of each example described in the embodiments disclosed herein, the embodiments of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is performed by hardware or computer software driving the hardware depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementations should not be considered to be beyond the scope of the embodiments of the present invention.
  • Embodiments of the present application can divide the above terminals into functional modules according to the above method examples.
  • each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module.
  • the above integrated modules can be implemented in the form of hardware or software function modules. It should be noted that the division of modules in the embodiment of the present invention is schematic and is only a logical function division. In actual implementation, there may be other division methods.
  • Each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above integrated units can be implemented in the form of hardware or software functional units.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it may be stored in a computer-readable storage medium.
  • the technical solutions of the embodiments of the present application are essentially or contribute to the existing technology, or all or part of the technical solution can be embodied in the form of a software product.
  • the computer software product is stored in a storage device.
  • the medium includes several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the methods described in various embodiments of this application.
  • the aforementioned storage media include: flash memory, mobile hard disk, read-only memory, random access memory, magnetic disk or optical disk and other media that can store program codes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种广告展示的方法、终端、服务器及系统,涉及互联网技术领域,可以避免终端因广告布局的更新而频繁更新应用程序,该方法包括:终端向服务器发送第一广告请求,用于请求第一应用中第一广告位对应的第一广告;服务器分别向终端返回第一广告的内容以及第一广告模板的信息,其中第一广告模板用于指示在所述第一广告位中呈现所述第一广告的方式;终端根据第一广告模板的信息查找本地的第一广告模板的模板文件,或者从服务器请求第一广告模板的模板文件,根据第一广告模板的模板文件显示第一广告。

Description

一种广告展示的方法、终端、服务器及系统
本申请要求于2022年8月26日提交国家知识产权局、申请号为202211034416.6、申请名称为“一种广告展示的方法、终端、服务器及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及互联网技术领域,尤其涉及一种广告展示的方法、终端、服务器及系统。
背景技术
随着手机、平板电脑的终端的普遍使用,终端上的应用程序(application,APP)的内置广告应用而生。目前,APP需要集成第三方的广告软件开发套件(Software development kit,SDK),而后APP通过广告SDK从广告交易平台获取相关的广告,并展现给用户。然而,当第三方的广告SDK发布新版本(例如更新广告的布局等)后,APP的开发者需要根据新版本的广告SDK更新自身的应用程序,即发布APP的新版本,由用户在终端侧更新APP版本。由此可见,当广告SDK的更新需求较频繁时,APP的开发者也需要频繁更新APP的版本,用户需要频繁更新终端上APP的版本,现有的广告SDK的更新方法较为繁琐。
发明内容
本申请提供的一种广告展示的方法、终端、服务器及系统,可以避免终端因广告布局的更新而频繁更新应用程序。
为了实现上述目的,本申请实施例提供了以下技术方案:
第一方面、提供一种广告展示的方法,该方法包括:终端向第一服务器发送第一广告请求,第一广告请求用于请求第一应用中第一广告位对应的第一广告;在接收到第一广告请求后,第一服务器获取第一广告的内容,以及获取第一广告模板的信息;并发送给终端。终端接收第一服务器返回的第一广告的内容以及第一广告模板的信息,其中第一广告模板用于指示在第一广告位中呈现第一广告的方式;终端根据第一服务器返回的第一广告模板的信息从本地或者从第一服务器下载第一广告模板的模板文件,根据第一广告模板的模板文件在第一界面的第一广告位中显示第一广告,那么终端显示第一应用的第一界面,其中第一界面包括按照第一广告模板显示的第一广告。
由此可见,本申请提供的广告展示的方法,将第一广告的内容和第一广告的呈现的方式解耦,第一服务器可以为终端匹配相对应的广告模板,例如第一广告模板,终端最后根据匹配的广告模板呈现广告内容。可以理解的,一些示例中,第一应用中集成广告SDK。那么,广告SDK的开发者可以通过更新广告模板的方式更新广告最后呈现给用户的样子以及与用户的交互方式等,那么,终端可以直接从第一服务器下载更新后的广告模板即可,无需对终端集成的广告SDK进行更新,也无需更新集成广告SDK的第一应用。由此,避免终端因广告布局的更新而频繁更新应用程序。
在一种可能的实现方式中,终端显示第一应用的第一界面之前,该方法还包括:若终端根据第一广告模板的信息在本地未查找到对应第一广告模板的模板文件,则向第一服务器请求第一广告模板的模板文件;终端接收到第一服务器返回的第一广告模板的模板文件;第一广告模板的模板文件包括广告的界面布局和交互信息。由此提供一种广告模板的更新时机。
在一种可能的实现方式中,终端显示第一应用的第一界面之前,该方法还包括:终端根据第一广告模板的信息获取对应的第一广告模板的模板文件;终端根据第一广告模板的模板文件检查终端的渲染引擎的版本是否满足预设条件;若终端的渲染引擎的版本不满足预设条件,则终端向第二服务器请求渲染引擎的最新版本;终端接收第二服务器返回的渲染引擎的最新版本。由此提供一种渲染引擎的更新时机。
一个示例中,终端的广告SDK中包括渲染引擎,该渲染引擎可用于根据广告模板调用终端的原生渲染系统进行渲染,呈现接收到的广告内容。可以理解的是,通过调用终端的原生渲染系统 渲染的第一广告的视图,可以保持与第一应用原有页面的画面一致,避免第一广告的视图与第一应用原有页面因风格、色调等不一致造成用户视觉上的突兀等。另外,由于原生渲染系统具有丰富的界面控件以及界面能力,因此调用终端的原生渲染系统渲染的第一广告的视图能够具有更丰富的界面控件以及具有更强大的界面能力,例如第一广告的视图可以提供更加丰富的界面交互方式,第一广告的视图可以具有更加丰富的视觉呈现效果,例如具有3D视觉效果等。
在一种可能的实现方式中,第一广告模板的模板文件包括预设条件。例如,预设条件为第一广告模板要求的渲染引擎的最低版本信息。
在一种可能的实现方式中,若终端的渲染引擎的版本不满足预设条件,则终端向第二服务器请求渲染引擎的最新版本,包括:终端的第一应用通过移动服务、应用市场应用,向第二服务器请求下载渲染引擎的最新版本;终端接收第二服务器返回的渲染引擎的最新版本,包括:终端的应用市场应用接收到第二服务器返回的渲染引擎的最新版本后,向移动服务返回渲染引擎的最新版本;终端的第一应用采用动态加载的方式从移动服务获取渲染引擎的最新版本。
也就是说,当对原生渲染系统的功能依赖变化,或者因广告模板的规范(例如定义的数据结构发生变化等)发生更新等造成渲染引擎需要更新时,广告SDK的开发者可以发布新版本的渲染引擎到应用市场服务器,而终端可以通过动态加载的方式从应用市场服务器获取新版本的渲染引擎。终端无需对整个广告SDK进行更新,也无需更新集成广告SDK的APP。
在一种可能的实现方式中,该方法还包括:终端在启动第一应用时或按预设时间周期,终端向第一服务器请求更新广告模板;终端接收第一服务器返回的广告模板的模板文件更新本地存储的广告模板的模板文件。由此提供了另一种广告模板的更新时机。
在一种可能的实现方式中,该方法还包括:终端在启动第一应用时或按预设时间周期,终端检查终端的渲染引擎的版本是否为最新版本;若终端的渲染引擎的版本不是最新版本,则向应用第一服务器请求渲染引擎的最新版本。由此提供了另一种渲染引擎版本的更新时机。
在一种可能的实现方式中,在终端显示第一应用的第一界面之后,该方法还包括:终端向第一服务器上传用户在第一界面中针对第一广告的交互行为,用于第一服务器根据用户在第一界面中针对第一广告的交互行为更新终端对应的用户画像。由此,提供了更新用户画像的方法,后续第一服务器可以根据更新的用户画像对相应的终端推荐广告模板。
可以理解的,本申请实施例中,第一应用可以根据终端的用户画像为不同的终端匹配不同的广告模板,那么即使针对同一广告数据也能够做到千人千面,为用户提供个性化的广告呈现效果。
在一种可能的实现方式中,在终端向第一服务器发送第一广告请求之前,该方法还包括:终端接收到显示第一应用的第一界面的第一指示,其中,第一指示为启动第一应用的指示,第一界面为第一应用的主界面;或者,第一指示为切换第一应用的界面的操作。由此提供了一种展示广告的场景。
在一种可能的实现方式中,该方法还包括:终端向第一服务器发送第二广告请求,第二广告请求用于请求第一应用中第一广告位对应的第二广告;终端接收第一服务器返回的第二广告的内容以及第二广告模板的信息;其中第二广告模板用于指示第一广告位中呈现第二广告的内容的方式,且第二广告模板与第一广告模板不同;终端显示第一应用的第二界面,其中第二界面包括按照第二广告模板显示的第二广告。由此可见,针对同一终端同一个广告位,可能采用不同的广告模板呈现广告。
在一种可能的实现方式中,第一广告模板或第二广播模板为文本文件。可以理解的,广告模板的文件较小,终端下载并更新广告模板的速率较快,用户无感知,不会打扰用户正常使用第一应用。
在一种可能的实现方式中,渲染引擎为工具kit包。
在一种可能的实现方式中,第一广告请求包括终端的信息,第一广告位的信息,第一应用的信息,终端本地已缓存的广告模板的信息,终端的渲染引擎的版本信息中的一项或多项。
第二方面、提供一种广告展示的方法,该方法包括:服务器接收终端发送的第一广告请求,第一广告请求用于请求第一应用中第一广告位对应的第一广告;服务器向终端返回第一广告的内容以及第一广告模板的信息,其中第一广告模板用于指示终端在第一广告位中呈现第一广告的内 容的方式。
在一种可能的实现方式中,第一广告请求包括终端的信息,第一广告位的信息,第一应用的信息,终端本地已缓存的广告模板的信息,终端的渲染引擎的版本信息中的一项或多项。
在一种可能的实现方式中,服务器根据第一广告请求中终端的信息对应的用户画像确定第一广告模板的信息。
在一种可能的实现方式中,服务器接收针对第一广告的内容的输入事件,其中,第一广告的内容包括商品名称、商品价格、图片信息、视频信息中一项或多项。
在一种可能的实现方式中,该方法还包括:服务器接收终端发送的第二广告请求,第二广告请求用于请求第一应用中第一广告位对应的第二广告;服务器向终端返回第二广告的内容以及第二广告模板的信息,其中第二广告模板用于指示终端在第一广告位中呈现第一广告的内容的方式;其中,第二广告模板与第一广告模板不同。
第三方面、提供一种终端,包括:处理器、存储器和显示屏,所述存储器、所述显示屏与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,以使得所述终端执行上述第一方面中及其中任一种可能的实现方式中所述的方法。
第四方面、提供一种服务器,包括:处理器、存储器和通信接口,所述存储器、所述通信接口与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,以使得所述服务器执行上述第第二方面中及其中任一种可能的实现方式中所述的方法。
第五方面、提供一种装置,该装置包含在终端或服务器中,该装置具有实现上述方面及可能的实现方式中任一方法中终端或服务器行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括至少一个与上述功能相对应的模块或单元。例如,接收模块或单元、发送模块或单元以及处理模块或单元等。可选的,还可以包括显示模块或单元。
第六方面、提供一种计算机可读存储介质,包括计算机指令,当计算机指令在终端上运行时,使得终端执行如上述第一方面及其中任一种可能的实现方式中所述的方法。
第七方面、提供一种计算机可读存储介质,包括计算机指令,当计算机指令在服务器上运行时,使得服务器执行如上述第二方面及其中任一种可能的实现方式中所述的方法。
第八方面、提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述方面中及其中任一种可能的实现方式中所述的方法。
第九方面、提供一种芯片系统,包括处理器,当处理器执行指令时,处理器执行如上述方面中及其中任一种可能的实现方式中所述的方法。
上述第二方面提供的服务器侧的方法、第三方面提供的终端、第四方面提供的服务器、第五方面提供的装置、第六方面提供的计算机可读存储介质、第七方面提供的计算机可读存储介质、第八方面提供的计算机程序产品、以及第九方面提供的芯片系统所能达到的技术效果,可以参考上述第一方面以及其中任一种可能的实现方式中的有关技术效果的描述,这里不再赘述。
附图说明
图1A为本申请实施例提供的一种系统架构的示意图;
图1B为本申请实施例提供的一种广告展示方法的示意图;
图1C为本申请实施例提供的另一种广告展示方法的示意图;
图2为本申请实施例提供的一种终端的结构示意图;
图3为本申请实施例提供的另一种终端的结构示意图;
图4为本申请实施例提供的一种APP的结构示意图;
图5为本申请实施例提供的一种服务器的结构示意图;
图6为本申请实施例提供的一种广告展示方法的流程示意图;
图7为本申请实施例提供的又一种广告展示方法的流程示意图;
图8为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
如图1A所示,为本申请实施例提供的一种广告展示系统的架构图,该架构图包括终端100,广告交易(Ad exchange,ADX)平台200(也称为广告交易服务器200)、供应方平台(Sell-Side Platform,SSP)300(也称为供应方服务器300)、需求方平台(demand side platform,DSP)400(也产能给我需求方服务器400)、以及应用市场服务器500。需要说明的是,图1A所示的平台或服务器可以为一个或多个服务器,其中部分平台或服务器可以集成在一起,或者,部分平台或服务器可以拆分为多个服务器等,本申请实施例对此不做具体限定。在一个示例中,ADX平台200和SSP300可以为同一个服务商;或者,ADX平台200、SSP300和DSP400可以为同一个服务商;或者,SSP300和DSP400为不同的服务商。
其中,ADX200,用于提供广告交易功能。
SSP300,包括广告模板仓库,用于管理大量的广告模板,可以包括广告模板的制作,存储以及下载等功能。其中广告模板,包括广告视图的界面布局,交互信息(例如与用户的交互方式等)、动效等内容。换言之,广告模板指示了广告最后呈现给用户的样子,以及与用户的交互方式等,即广告视图的呈现效果。可以理解的是,在真实的使用场景中,大量的SDK的更新需求是可以通过更新广告模板来实现。那么,广告SDK的开发者或者其他开发者可以将更新的广告模板上传到SSP300的广告模板仓库,以供终端100进行下载和使用。可选的,SSP300,还包括推荐算法模型,可用于根据广告请求方(例如终端100)的信息(例如APP的信息,用户画像等)为广告请求方匹配相应的广告模板,即向广告请求方推荐模板。
DSP400,为广告主、代理商提供的管理平台,通过统一界面管理大量的广告资源,例如提供创建广告、投放广告等功能。例如,如图1B中(1)所示,为广告主或代理商登录广告交易平台投放广告的一个界面示意图。广告主或代理商在该界面中输入某个投放广告的内容:商品的文字信息(如名称、价格)、图片信息(如图片地址)、跳转地址、定向投放策略、以及广告的投放位置等广告数据。需要说明的是,这里广告主或代理商输入的广告数据包括广告内容以及投放规则(如定向投放策略等)等,并没有定义广告最后呈现给用户的样子。后续,SSP300根据广告请求方的信息(例如APP的信息,用户画像等)为广告请求方匹配相应的广告模板。比如,SSP300为广告请求方1匹配如图1B中(2)所示的广告模板1,广告模板1对应的广告视图中,商品的文字信息在上方,图片信息在下方。SSP300为广告请求方2匹配如图1B中(3)所示的广告模板2,广告模板2对应的广告视图中,商品的图片信息位于左侧,文字信息位于右侧。由此可见,针对同一广告,SSP300可能为不同广告请求方匹配不同的广告模板,那么不同广告请求方针对同一广告呈现的广告视图的界面布局不同。
又例如,如图1C中(1)所示,为广告主或代理商登录广告交易平台投放广告的另一个界面示意图。其中,广告主或代理商可以输入投放广告的资源合集,例如图片地址、视频地址以及动图地址。其他内容与上一个示例相同。后续,SSP300根据广告请求方的信息(例如APP的信息,用户画像等)为广告请求方匹配相应的广告模板。比如,SSP300为广告请求方1匹配如图1C中(2)所示的广告模板3,广告模板3对应的广告视图中包括商品的文字信息和图片。SSP300为广告请求方2匹配如图1C中(3)所示的广告模板4,广告模板4对应的广告视图包括商品的文 字信息和视频。SSP300为广告请求方3匹配如图1C中(4)所示的广告模板5,广告模板5对应的广告视图包括商品的文字信息和动图。由此可见,针对同一广告,SSP300可能为不同广告请求方匹配不同的广告模板,那么不同广告请求方针对同一广告呈现的广告视图包含的界面元素不同。
终端100,其上安装有APP,该APP集成有广告SDK,该APP可以通过广告SDK向广告交易平台200请求广告。在本申请实施例中,广告交易平台200可以根据请求,从DSP400获取相应的广告数据,并从SSP300处匹配与终端100相对应的广告模板。广告交易平台200向终端100返回广告数据以及推荐的广告模板。终端100根据推荐的广告模板信息以广告视图的形式展示广告数据。在一些实施例中,终端100的广告SDK包括渲染引擎,该渲染引擎可用于根据广告模板调用终端100的原生渲染系统进行渲染,呈现接收到的广告数据。可以理解的是,通过调用终端100的原生渲染系统渲染的广告视图,可以保持与APP原有页面的画面一致,避免广告视图与APP原有页面因风格、色调等不一致造成用户视觉上的突兀等。另外,由于原生渲染系统具有丰富的界面控件以及界面能力,因此调用终端100的原生渲染系统渲染的广告视图能够具有更丰富的界面控件以及具有更强大的界面能力,例如广告视图可以提供更加丰富的界面交互方式,广告视图可以具有更加丰富的视觉呈现效果,例如具有3D视觉效果等。在另一些实施例中,若终端100未存储有本次推荐的模板时,终端100的广告SDK可以先向SSP300请求本次推荐的模板。
需要说明的是,本文的“渲染引擎”是本申请为方便方案描述提供的名称,在一些示例中不能作为对本申请方案的功能限定。
在另一些实施例中,当对原生渲染系统的功能依赖变化,或者因广告模板的规范(例如定义的数据结构发生变化等)发生更新等造成渲染引擎需要更新时,广告SDK的开发者可以发布新版本的渲染引擎到应用市场服务器500,而终端100可以通过动态加载的方式从应用市场服务器500获取新版本的渲染引擎。终端100无需对整个广告SDK进行更新,也无需更新集成广告SDK的APP。
由此可见,在本申请实施例中,将广告数据和广告模板解耦,并为广告请求方(例如终端100)匹配相对应的广告模板,终端100最后根据推荐的广告模板呈现广告数据,即绘制广告视图。可以理解的,一些示例中,广告SDK的开发者可以通过更新广告模板的方式更新广告最后呈现给用户的样子以及与用户的交互方式等,那么,终端100可以直接从SSP300下载更新后的广告模板即可,无需对其中的广告SDK进行更新,也无需更新集成广告SDK的APP。可选的,终端100还可以通过动态加载的方式从应用市场获取新版本的渲染引擎,仍然无需对整个广告SDK进行更新,也无需更新集成广告SDK的APP。
综上,本申请实施例提供的广告SDK的更新方法,无需终端100更新集成广告SDK的APP。
另外,本申请实施例中,SSP300可以根据广告请求方的相关信息(例如广告请求的APP,广告请求方的用户画像等)为不同的广告请求方匹配不同的广告模板,那么即使针对同一广告数据也能够做到千人千面,为用户提供个性化的广告呈现效果。
示例性的,本申请实施例中终端100例如可以为手机、平板电脑、个人计算机(personal computer,PC)、个人数字助理(personal digital assistant,PDA)、智能手表、上网本、可穿戴终端、增强现实技术(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、车载设备、智慧屏、智能汽车、智能音响等,本申请对该终端100的具体形式不做特殊限制。
图2示出了终端100的结构示意图。
终端100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对终端100的具体限定。在本申请另一些 实施例中,终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端100的结构限定。在本申请另一些实施例中,终端100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过终端100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
终端100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。终端100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在终端100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。 应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在终端100上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,终端100可以包括1个或N个显示屏194,N为大于1的正整数。
终端100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端100可以支持一种或多种视频编解码器。这样,终端100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴 人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行终端100的各种功能应用以及数据处理。
终端100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。终端100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当终端100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。终端100可以设置至少一个麦克风170C。在另一些实施例中,终端100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,终端100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端100可以接收按键输入,产生与终端100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和终端100的接触和分离。终端100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。终端100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,终端100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在终端100中,不能和终端100分离。
终端100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明终端100的软件结构。
图3是本发明实施例的终端100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
在本申请实施例中,应用程序层包括第一APP,该第一APP包括广告SDK,第一APP通过广告SDK获取广告或呈现广告。第一APP例如可以是视频类APP、新闻类APP、游戏类APP、社交类APP、音乐类APP等。
如图4所示,为本申请实施例提供的一种第一APP的结构示意图。第一APP包括广告SDK和第一APP的业务功能(例如视频类APP的视频播放功能、新闻类APP的新闻浏览功能、游戏类APP的游戏功能等)。其中,广告SDK包括广告服务模块、动态加载模块、模板管理模块以及渲染引擎。其中,广告服务模块包括广告的业务逻辑,例如向ADX平台200请求广告,接收ADX平台200返回的广告数据以及推荐的模板信息等。动态加载模块用于广告SDK动态加载渲染引擎的新版本。模板管理模块,用于从SSP300下载广告模块,以及对下载的广告模板进行管理等。渲染引擎,用于将广告服务模块接收的广告模板解析为终端100的原生渲染系统对应的界面描述和交互信息,调用终端100原生渲染系统绘制广告视图;解析广告服务模块接收到的广告数据,根据广告模板中定义的数据结构对应的数据填充到广告视图中的相应位置,生成最终的呈现给用户的广告视图等。
在一些示例中,应用程序层还包括移动服务,例如华为移动服务(HUAWEI mobile service,HMS)核心服务,用于从应用市场APP(图3中未示出)获取广告SDK中的渲染引擎的最新版本。广告SDK中的动态加载模块可以通过移动服务动态加载渲染引擎的最新版本的代码。如此,当渲染引擎更新时,终端100无需更新第一APP,即可获取到渲染引擎的最新版本,使用渲染引擎的最新功能。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供终端100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的 java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
如图5所示,为本申请实施例提供的一种SSP300的结构示意图。该SSP300包括至少一个处理器210、至少一个存储器220、至少一个通信接口230。可选的,SSP300还可以包括输出设备和输入设备,图中未示出。
处理器210、存储器220和通信接口230通过总线相连接。处理器210可以是一个通用中央处理器(central processing unit,CPU)、微处理器、特定应用集成电路(application-specific integrated circuit,ASIC),或者一个或多个用于控制本申请方案程序执行的集成电路。处理器210也可以包括多个CPU,并且处理器210可以是一个单核(single-CPU)处理器或多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路或用于处理数据(例如计算机程序指令)的处理核。
存储器220可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器220可以是独立存在,通过总线与处理器210相连接。存储器220也可以和处理器210集成在一起。其中,存储器220用于存储执行本申请方案的应用程序代码,并由处理器210来控制执行。
在一些实施例中,SSP300的存储器220可用于存储大量广告模板。可选的,SSP300还可以用于存储广告模板的推荐算法模型等。
通信接口230,可用于与其他设备或通信网络通信,如以太网,无线局域网(wireless local area networks,WLAN)等。
在本申请实施例中,SSP300可以通过该通信接口230与终端100进行交互,例如向终端100发送广告模板等。可选的,SSP300还可以通过该通信接口230接收广告SDK开发者或者其他开发者制作或上传的广告模板。可选的,SSP300还可以通过该通信接口230接收广告SDK开发者或者其他开发者上传的广告模板的算法等。可选的,SSP300还可以通过该通信接口230接收第一APP的开发者对广告模板类型等的设置。
输出设备和处理器通信,可以以多种方式来显示信息。例如,输出设备可以是液晶显示器(liquid crystal display,LCD),发光二级管(light emitting diode,LED)显示设备,阴极射线管(cathode ray tube,CRT)显示设备,或投影仪(projector)等。输入设备和处理器通信,可以以多种方式接收用户的输入。例如,输入设备可以是鼠标、键盘、触摸屏设备或传感设备等。
还需要说明的是,图1A所示的ADX平台200、DSP400以及应用市场服务器500的结构均可参考图5所示的SSP300的结构。可以理解的是,ADX平台200、DSP400以及应用市场服务器500的结构,可以比图3中SSP300具有更多或更少部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。本申请对SSP300、ADX平台200、DSP400以及应用市场服务器500的结构均不做特殊限制。
下面以第一APP集成广告SDK为例,结合附图对本申请实施例提供的技术方案进行详细说 明。
广告SDK的开发者开发出广告SDK后,广告SDK包括渲染引擎等。可选的,广告SDK还可以包括初始设计的各个广告模板。第一APP的开发者在开发第一APP时,集成该广告SDK,而后将开发好的第一APP上架到应用市场,而后,终端100可以通过应用市场下载并安装第一APP,或者由终端100的厂商将第一APP预置到终端100。
可选的,广告SDK的开发者还将设计的各个广告模板上传到SSP300的广告模板仓库中。可选的,广告SDK将渲染引擎的最新版本上架到应用市场。
一些实施例中,当广告SDK的开发者更新广告模板时,可以通过SSP300制作新的广告模板,或者将制作好的广告模板上传到SSP300的广告模板仓库中。SSP300可以定期向终端100的第一APP推送更新的广告模板,例如SSP300定期向终端100的第一APP发送更新通知,由用户手动进行更新。或者,在终端100启动第一APP后自动更新广告模板。可选的,终端100的第一APP可以主动向SSP300请求更新的广告模板等。例如,终端100在启动第一APP后,主动向SSP300请求更新的广告模板。又例如,当终端100发送广告请求后,在接收到ADX平台200返回的广告数据和推荐的模板信息时,确定本地没有推荐的模板时,主动向SSP300请求更新的广告模板,以获取推荐的模板。总而言之,本申请实施例对终端100第一APP更新广告模板的时机不做具体限定。
由此可见,当广告SDK的开发者更新广告模板时,第一APP的开发者无需更新APP的版本。终端100也无需更新第一APP。一些示例中,终端100更新广告模板的过程用户无感知,避免打扰用户,提升用户的使用体验。
在另一实施例中,当广告SDK的开发者需要更新广告SDK中的渲染引擎时,可以将新版本的渲染引擎上架到应用市场。在一个示例中,开发者可以将新版本的渲染引擎以一个工具(kit)包的形式上架到应用市场。终端100的广告SDK可以采用动态加载的方式从应用市场获取新版本的渲染引擎。如此,终端100无需对整个SDK进行更新,也无需对第一APP进行更新,即可使用新版本的渲染引擎的新功能。在一个具体实现中,广告SDK可以通过终端100的系统服务-移动服务实现动态加载新版本的渲染引擎。例如,终端100的移动服务定期与应用市场APP进行交互,检查本地的渲染引擎的版本号是否为最新的版本。当本地的渲染引擎的版本号不为最新的版本后,终端100自动通过应用市场APP从应用市场的服务器500获取最新版本的渲染引擎。当第一APP启动后,广告SDK可以向移动服务检查广告SDK中渲染引擎的版本号是否为最新的版本。当广告SDK中渲染引擎的版本号不为最新的版本后,广告SDK向移动服务获取最新版本的渲染引擎。在其他一些实现中,广告SDK也可以自动通过应用市场APP从应用市场的服务器500获取最新版本的渲染引擎。本申请实施例对广告SDK动态加载最新版本的渲染引擎的实现不做具体限定。
可以理解的,无论广告SDK更新广告模板,还是动态加载新版本的渲染引擎,整个更新效率都是高于现有技术中终端100更新第一APP的更新效率,由此本申请实施例提供的广告SDK更新方法极大地提升了更新效率。
另外,在真实的使用场景,大量的SDK的更新需求是可以通过更新广告模板和/或更新渲染引擎来实现。那么,当广告SDK有频繁的更新需求时,本申请实施例提供的广告SDK的更新方法均无需更新整个广告SDK,也无需更新第一APP,极大地简化了广告SDK的更新流程,提升了更新效率。
如图6所示,为本申请实施例提供的一种展示广告的方法流程示意图,该方法包括:
S601、终端100向ADX平台200发送广告请求。其中,广告请求中包括广告位信息(例如广告位标识)、第一APP的信息、以及终端100的信息中的一项或多项。
其中,广告位信息包括广告位标识和/或广告位类型等。第一APP的信息包括第一APP的包名、版本号、签名等中的一项或多项。终端100的信息包括终端100的开放匿名设备标识符(Open Anonymous Device Identifier,OAID)、机型、系统版本号、设备能力等中的一项或多项。
在一些实施例中,当终端100启动第一APP后,显示第一APP的主页面,当第一APP的主页面中包括展示广告的区域位置(即广告位)时,第一APP通过其集成的广告SDK向ADX平台 200发送广告请求。该广告请求中携带广告位信息,例如广告位标识等。或者,当终端100根据用户的操作或者自动跳转到第一APP的其他页面,而其他页面中包括广告位时,第一APP通过其集成的广告SDK向ADX平台200发送广告请求。其中,用户的操作例如包括用户使用终端100浏览新闻页面或网页过程中执行的拖拽页面的操作,或者用户终端100观看视频过程中执行暂停播放的操作,又或者用户在终端100当前页面中执行跳转到另一页面的操作等。又或者,终端100在显示某个页面时,第一APP周期性通过其集成的广告SDK向ADX平台200发送广告请求,以实时更新该页面中广告位中的广告内容等。总而言之,本申请实施例对终端100向ADX平台200发送广告请求的时机以及场景均不做限定。
其中,第一APP的一个页面中包括的广告位可以为一个或多个。那么,该广告请求中包括的广告位信息也可以相应地包括一个或多个广告位标识。在一些示例中,当第一APP的一个页面包括一个或多个广告位时,该广告请求中的广告位信息可以该页面的标识,用于请求该页面中的所有广告位对应的广告内容。
在一个具体实现中,第一APP可以根据页面中包括的广告位调用广告SDK的请求广告的接口,例如原生广告的加载器(INativeAdLoader),获取广告。而后,广告SDK再向ADX平台200发送广告请求。以下表一示例性给出第一APP调用广告SDK涉及到的接口说明。
表一
例如,以下示例性给出一种终端100向ADX平台200发送的广告请求的格式:

由此可见,终端100向ADX平台200发送的广告请求可以包括第一APP的信息,终端100的设备信息,广告位的信息等。可选的,还可以包括终端100本地已缓存的广告模板的信息(例如已存储的广告模板的标识)。可选的,还可以包括终端100中渲染引擎的版本号。可选的,还可以包括终端100的网络信息等。
S602、ADX平台200接收到终端100的广告请求后,向DSP400发送获取广告的请求。
在一些实施例中,ADX平台200根据终端100请求中携带的信息(例如第一APP的应用信息、终端100的设备信息、网络信息、广告位的信息等)以及相应的广告交易规则(如定向投放 策略等),向DSP400发送获取广告的请求。
S603、DSP400向ADX平台200返回广告数据。
其中,DSP400平台根据终端100请求中携带的信息(例如第一APP的应用信息、终端100的设备信息、网络信息、广告位的信息等)向终端返回对应的广告数据,广告数据可以包括一个或多个广告的内容。在一些实施例中,获取广告的请求中包括一个广告位的标识,DSP400返回的广告数据可以包括一个或多个广告的内容。当DSP400返回的广告数据包括多个广告的内容时,则第一APP的这个页面的这个广告位可以按照一定的轮播规则显示多个广告。在另一些实施例中,获取广告的请求中包括多个广告位的标识,DSP400返回的广告数据可以包括多个广告的内容。可以理解的,每个广告位可以对应一个或多个广告的内容。
可选的,ADX平台200向终端100返回广告数据。之后,
S604、ADX平台200向SSP300发送匹配广告模板的请求。其中,该匹配广告模板的请求中包括广告位信息(例如广告位标识)和/或终端100的信息。
在一些实施例中,ADX平台200可以在接收到DSP400返回的广告数据(即执行步骤S603)之后,执行步骤S604;也可以在接收终端100发送的广告请求(即步骤S601)之后执行步骤S604,在步骤S603之前或者与步骤S603同时执行,本申请实施例不做具体限定。
在一个具体实现中,ADX平台200根据终端100发送的广告请求中的信息(例如第一APP的应用信息、终端100的设备信息、网络信息、广告位的信息等)调用匹配广告模板的接口,向SSP300(例如更具体的为SSP300中的推荐算法模型)发送匹配广告模板的请求。表二示例性地给出了ADX平台200调用的匹配广告模板的接口说明。
表二
其中,设备信息为终端100的信息。
S605、SSP300在接收到ADX平台200的匹配广告模板的请求后,根据推荐算法为终端100本次的广告请求匹配相应的广告模板,向ADX平台200返回推荐的广告模板(以下简称推荐模板)的标识。
在一个实施例中,SSP300(例如具体为SSP300中的推荐算法模型)在接收到匹配广告模板的请求后,根据请求中终端100的标识,查找终端100的用户画像,并根据终端100的用户画像确定与请求中广告位标识向匹配的广告模板,即为推荐的广告模板。其中,用户画像包括但不限于用户观看广告时的偏好(例如偏好图片类型或视频类型),观看广告的时长(例如观看广告视频的播放时长),以及观看广告时的交互方式(例如滑动操作、点击操作、摇一摇、语音交互)等。例如,如图1C中(1)所示,当投放广告的广告数据中包括资源合集时,SSP300可以根据终端100的用户画像推荐相应的广告模板。例如,用户观看广告时偏好图片类型,则SSP300向终端100推荐如图1C中(2)所示的广告模板3,广告模板3对应的广告视图包括文字信息和图片信息,不包括视频信息和动图信息。又例如,用户观看广告时偏好视频类型,则SSP300向终端100推荐如图1C中(3)所示的广告模板4,广告模板4对应的广告视图包括文字信息和视频信息,不包括图片信息和动图信息。
S606、ADX平台200向终端100返回广告数据以及推荐模板的信息。
在一些实施例中,ADX平台200可以一次性向终端100返回广告数据以及推荐模板的信息(例如推荐模块的标识),也可以在ADX平台200接收到DSP400返回的广告数据后,先向终端100返回广告数据;接收到SSP300推荐模板的信息后,再向终端100返回推荐模板的信息。或者,ADX平台200向终端100先返回推荐模板的信息,再返回广告数据。
在一个具体实现中,终端100的第一APP可以通过调用广告SDK的广告请求状态回调接口(NativeAdListener),获取广告SDK请求广告的状态,以下表三示例性给出广告SDK的广告请 求状态回调接口说明。
表三
其中,本次请求返回的原生广告列表中包括ADX平台200向终端100返回的广告数据,包括一个或多个广告的内容。
例如,以下示例性地给出一个ADX平台200向终端100返回的广告数据的格式:

由上可见,返回的广告数据中包括返回广告的类型、广告的内容、推荐的广告模板的标识、广告任务的标识以及广告位等信息。需要说明的是,此时返回的广告数据中推荐的广告模板可以终端100本地已缓存的广告模板中的任一个,也可以不在终端100本地已缓存的广告模板中。
S607、终端100根据推荐模板的信息,查找本地是否有该推荐模板的模板文件。
在一些实施例中,结合图3所示的第一APP的结构示意图,第一APP可以根据推荐模板的信息,通过广告SDK中模块管理模块查找终端100本地是否存储有该推荐模板的模板文件。
如果终端100本地存储有该推荐模板的模板文件,则广告SDK调用渲染引擎解析推荐模板的模板文件,将模板文件中对应的数据结构与广告数据中相应的数据进行绑定,调用终端100的原生渲染系统绘制广告视图,向用户呈现广告。即,执行步骤S610a。
如果终端100本地未存储有该推荐模板的模板文件,则终端100执行下述步骤S608。
在一个具体实现中,终端100的第一APP可以通过调用广告SDK提供的广告模板管理的接口,查询、增加、删除、更新广告SDK中模板管理模块存储的广告模板的模板文件,下述表四示例性地给出了广告SDK提供的广告模板管理的接口说明。
表四

其中,模板信息包括但不限于模板标识、模板信息地址、模板版本以及模板中包括的数据结构等。下述表五示例性给出了模板信息的内容。
表五
S608、如果终端100未查找到推荐模板的模板文件,则向SSP300请求下载该推荐模板的模板文件。
在一个具体的实现中,终端100可以向SSP300的广告模板仓库请求下载推荐模板的模板文件。
S609、SSP300向终端100返回推荐模板的模板文件。
在一些实施例中,模板文件包括广告视图的界面布局,交互信息、动效等内容。在一个示例中,模板文件可以为文本文件。某个广告模板的模板文件可以包括一个或多个文件。
以下示例性给出一个广告模板的模板文件中的部分内容的示例,如下:

S610、终端100检测广告SDK中渲染引擎的版本是否满足要求。
在一些实施例中,终端100(更具体的为第一APP)在根据推荐模板渲染广告视图之前,先检查中广告SDK中的渲染引擎的版本是否满足渲染要求,即满足根据推荐模板渲染的要求。一些示例中,推荐模板的模板文件中还包括要求的渲染引擎的最低版本号。那么,终端100在使用推荐模板渲染时,先检测广告SDK中渲染引擎的版本号是否满足推荐模板要求的最低版本号。如果满足,终端100调用广告SDK的渲染引擎绘制广告视图,即执行下述步骤S615。如果不满足,终端100需先加载最新版本的渲染引擎,即执行显示步骤S611。
S611、终端100向应用市场服务器500请求加载最新版本的渲染引擎。
在一个示例中,本步骤S611包括步骤S611a和步骤S611b。终端100的第一APP携带广告SDK中渲染引擎的版本号向终端100的移动服务请求加载最新版本的渲染引擎。移动服务根据广告SDK中渲染引擎的版本号向应用市场请求更新最新版本的渲染引擎。在一个具体实现中,渲染引擎可以是一个工具(kit)包。
在一个具体实现中,终端100的第一APP可以通过调用广告SDK提供的接口,查询广告SDK中的渲染引擎的版本。下述表六示例性地给出了广告SDK提供的查询渲染引擎版本的接口说明。
表六
S612、终端100向SSP300请求下载最新版本的渲染引擎。
S613、SSP300向终端100返回最新版本的渲染引擎。
S614、终端100动态加载最新版本的渲染引擎。
在一些实施例中,步骤S614包括步骤S614a和步骤S614b。终端100的应用市场接收到SSP300返回的最新版本的渲染引擎后,将最新版本的渲染引擎发送给移动服务。第一APP的广告SDK(例如更具体的为广告SDK中的动态加载模块)以动态加载的方式从移动服务获取最新版本的渲染引擎。例如,广告SDK采用DexLoader的方式加载移动服务中最新版本的渲染引擎的kit包,然后通过反射的方式来加载kit包中的代码,从而可以实现广告SDK运行时执行的是移动服务中kit包里的代码,从而广告SDK中的渲染引擎能够实现新版本的性能。
在一个具体实现中,第一APP可以通过调用广告SDK提供的动态加载接口,实现动态加载移动服务中最新版本的渲染引擎。下述表七示例性地给出了广告SDK提供的动态加载接口的说明。
表七
S615、终端100根据广告数据以及推荐模板绘制广告视图。
在一些实施例中,第一APP中的渲染引擎可以解析推荐模板中的界面布局,交互信息以及动效等,将推荐模板转换为终端100原生渲染系统(例如Android系统原生的渲染系统)的界面描述文件以及交互文件等。该渲染引擎还解析从DSP300返回的广告数据,将与推荐模板中定义的 数据结构对应的内容填充到广告视图中相应位置,最终生成完整的广告视图。
可以理解的是,由于终端100的原生渲染系统本身具有强大的视图能力,例如能够绘制各种类型的控件,且各类控件具有不同的功能。那么,本申请实施例中,广告SDK通过渲染引擎调用终端100的原生渲染系统渲染绘制广告视图,因此广告SDK能够绘制出更多类型的控件,各种类型的控件也具有不同的功能,从而使得呈现给用户的广告视图具有更加丰富类型的控件,各个控件能够实现的功能也很丰富,极大地提升了广告的视觉体验和使用体验。例如,通过本申请实施例提供的广告SDK,能够绘制出具有更加丰富交互方式的广告视图,广告视图也可以呈现更多的视觉效果,例如呈现3D的效果。
在一个具体实现中,第一APP可以通过调用广告SDK提供的渲染引擎的接口,实现渲染广告视图。下述表八示例性地给出了广告SDK提供的渲染引擎的接口说明。
表八
由上可见,本申请实施例提供的广告的展示方法能够实现将广告数据和广告模板解耦,并为广告请求方(例如终端100)匹配相对应的广告模板,终端100最后根据推荐的广告模板呈现广告数据,即绘制广告视图。可以理解的,一些示例中,广告SDK的开发者可以通过更新广告模板的方式更新广告最后呈现给用户的样子以及与用户的交互方式等,那么,终端100可以直接从SSP300下载更新后的广告模板即可,无需对其中的广告SDK进行更新,也无需更新集成广告SDK的APP。另一些示例中,终端100还可以通过动态加载的方式从应用市场获取新版本的渲染引擎,仍然无需对整个广告SDK进行更新,也无需更新集成广告SDK的APP。
另外,由于本申请实施例提供的广告的展示方法还可以根据广告请求方(例如终端100)的信息(例如用户画像)为该广告请求方匹配相对应的广告模板,实现为不同用户提供个性化的广告呈现效果,即同一广告(例如广告标识相同)也可以做到千人千面的广告呈现效果,极大地提升广告的视觉体验和使用体验。
可选的,本方法流程还可以包括下述步骤S616以及步骤S617。
S616、终端100记录与广告视图相关的用户行为,并上报给SSP300。
其中,与广告视图相关的用户行为包括但不限于,用户与广告视图的交互行为,用户查看广告视图的行为等。
S617、SSP300根据终端100上报的用户行为,更新终端100的用户画像。
其中,用户画像可以包括用户的操作习惯,例如观看广告视频的时长不超过预设时长(例如10秒),用户习惯使用向上滑的操作关闭广告视图,用户习惯使用摇一摇的方式打开广告视图等。
由此可见,终端100可以周期性或实时地上报与广告视图有关的用户行为,SSP300则可以根据上报的与广告视图有关的用户行为,更新终端100的用户画像,以便后续根据更新后的用户画像为终端100匹配更合适的广告模板。
另外,根据本申请实施例提供的技术方案,广告主在投放广告时,可以仅开发广告的内容(如文字、图片、视频等)以及广告的逻辑等,无需设计广告呈现给用户时的样子,包括广告的布局方式以及与用户的交互方式等。其中,广告呈现给用户时的样子(即呈现的广告视图)可以由广告SDK开发者设计的广告模板以及广告请求方的用户画像来确定。
如图7所示,为本申请实施例提供的另一种广告展示方法的流程示意图,该方法包括:
S701、终端100的应用市场APP从应用市场的服务器500获取到上架的新版本的渲染引擎。
如前文所述,当对原生渲染系统的功能依赖变化,或者因广告模板的规范(例如定义的数据结构发生变化等)发生更新等造成渲染引擎需要更新时,广告SDK的开发者可以发布新版本的渲染引擎到应用市场服务器500。那么,终端100的应用市场APP可以从应用市场的服务器500获取到最新版本的渲染引擎的上架信息。
S702、终端100的移动服务自动更新新版本的渲染引擎。
终端100的移动服务定期(按照预设时间周期)将自身已有的渲染引擎的版本号与应用市场APP中上架的渲染引擎的版本号进行比对。当检查到应用市场APP上架有新版本的渲染引擎后,移动服务自动通过应用市场APP从应用服务器500下载新版本的渲染引擎。
S703、终端100的第一APP启动时,初始化广告SDK。
在终端100启动第一APP时,初始化广告SDK。广告SDK在初始化时,会携带自身的渲染引擎的版本号,从移动服务查询渲染引擎是否有新版本。如果有移动服务有新版本的渲染引擎,执行下述步骤S704。或者,在其他一些实施例中,终端100的第一APP也可以定期(按照预设时间周期)携带自身的渲染引擎的版本号,从移动服务查询渲染引擎是否有新版本。如果有移动服务有新版本的渲染引擎。本申请实施例不做具体限定。
S704、终端100的广告SDK从移动服务动态加载新版本的渲染引擎。
S705、终端100的广告SDK从SSP300获取更新后的广告模板。
在一些实施例中,终端100的广告SDK还可以携带广告模板的版本号,向SSP300查询是否有新版本的广告模板。如果有,则终端100请求下载更新后的广告模板。可以理解的,广告模板的文件较小,终端100下载并更新广告模板的速率较快,用户无感知,不会打扰用户正常使用第一APP。
在其他一些实施例中,终端100也可以先不执行步骤S705。一些示例中,终端100可以先检查本地的广告模板是否为最新版本的广告模板。如是最新版本,则无需执行本步骤,直接执行步骤S706。如果不是最新版本,则再执行本步骤。在另一些示例中,终端100还可以不检查本地的广告模板是否为最新版本的广告模板,直接执行步骤S706。后续,执行步骤S711后,当确定终端100本地未存储有推荐模板时,再从SSP300下载推荐模板的模板文件,可查看上述图6中的步骤S608和步骤S609。或者,当确定终端100本地未存储有推荐模板时,终端100直接从SSP300请求下载更新的全部的广告模板,更新的全部的广告模板中包括推荐模板。本申请实施例不做具体限定。
在另一些实施例中,终端100的第一APP也可以定期(按照预设时间周期)携带广告模板的版本号,向SSP300查询是否有新版本的广告模板。本申请实施例不做具体限定。
S706、终端100的广告SDK向ADX平台200发送广告请求。
S707、ADX平台200向DSP400获取广告。
S708、DSP400向ADX平台200返回广告数据。
S709、ADX平台200向SSP300请求推荐模板。
S710、SSP300向ADX平台200返回推荐模板的信息。
S711、ADX平台200向终端100返回推荐模板的信息以及广告数据。
S712、终端100根据推荐的广告模板和广告数据绘制广告视图。
上述步骤S706至步骤S712可参考上述图6所述实施例的相关内容,这里不再赘述。
由此可见,本申请实施例中,广告SDK的开发者可以以kit包的形式,单独更新广告SDK中渲染引擎,并将新版本的渲染引擎上架到应用市场。而终端100中第一APP(例如更具体地为第一APP中的广告SDK)自动采用动态加载的方式加载新版本渲染引擎的执行代码,实现广告SDK的更新。如此,第一APP的开发者无需针对新版本渲染引擎的新功能重新开发新版本的第一APP,终端100也无需更新第一APP,无需更新整个广告SDK,即可实现新版本渲染引擎的新功能。
本申请实施例还提供一种芯片系统,如图8所示,该芯片系统包括至少一个处理器1101和至少一个接口电路1102。处理器1101和接口电路1102可通过线路互联。例如,接口电路1102可用于从其它装置(例如终端100的存储器)接收信号。又例如,接口电路1102可用于向其它装置(例如处理器1101)发送信号。示例性的,接口电路1102可读取存储器中存储的指令,并将该指令发送给处理器1101。当所述指令被处理器1101执行时,可使得终端执行上述实施例中的终端100(比如,手机)执行的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种装置,该装置包含在终端中,该装置具有实现上述实施例中任一方法中终端行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或 软件包括至少一个与上述功能相对应的模块或单元。例如,检测模块或单元、显示模块或单元、确定模块或单元、以及计算模块或单元等。
本申请实施例还提供一种计算机存储介质,包括计算机指令,当计算机指令在终端上运行时,使得终端执行如上述实施例中任一方法。
本申请实施例还提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述实施例中任一方法。
本申请实施例还提供一种终端上的图形用户界面,所述终端具有显示屏、摄像头、存储器、以及一个或多个处理器,所述一个或多个处理器用于执行存储在所述存储器中的一个或多个计算机程序,所述图形用户界面包括所述终端执行如上述实施例中任一方法时显示的图形用户界面。
可以理解的是,上述终端等为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
本申请实施例可以根据上述方法示例对上述终端等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (22)

  1. 一种广告展示的方法,其特征在于,所述方法包括:
    终端向第一服务器发送第一广告请求,所述第一广告请求用于请求第一应用中第一广告位对应的第一广告;
    所述终端接收所述第一服务器返回的所述第一广告的内容以及第一广告模板的信息,其中所述第一广告模板用于指示在所述第一广告位中呈现所述第一广告的方式;
    所述终端显示所述第一应用的第一界面,其中所述第一界面包括按照所述第一广告模板显示的所述第一广告。
  2. 根据权利要求1所述的方法,其特征在于,所述终端显示所述第一应用的第一界面之前,所述方法还包括:
    若所述终端根据所述第一广告模板的信息在本地未查找到对应所述第一广告模板的模板文件,则向所述第一服务器请求所述第一广告模板的模板文件;
    所述终端接收到所述第一服务器返回的所述第一广告模板的模板文件;所述第一广告模板的模板文件包括广告的界面布局和交互信息。
  3. 根据权利要求1或2所述的方法,其特征在于,所述终端显示所述第一应用的第一界面之前,所述方法还包括:
    所述终端根据所述第一广告模板的信息获取对应的所述第一广告模板的模板文件;
    所述终端根据所述第一广告模板的模板文件检查所述终端的渲染引擎的版本是否满足预设条件;
    若所述终端的渲染引擎的版本不满足预设条件,则所述终端向第二服务器请求所述渲染引擎的最新版本;
    所述终端接收所述第二服务器返回的所述渲染引擎的最新版本。
  4. 根据权利要求3所述的方法,其特征在于,所述第一广告模板的模板文件包括所述预设条件。
  5. 根据权利要求3或4所述的方法,其特征在于,若所述终端的渲染引擎的版本不满足预设条件,则所述终端向第二服务器请求所述渲染引擎的最新版本,包括:
    所述终端的所述第一应用通过移动服务、应用市场应用,向所述第二服务器请求下载所述渲染引擎的最新版本;
    所述终端接收所述第二服务器返回的所述渲染引擎的最新版本,包括:
    所述终端的所述应用市场应用接收到所述第二服务器返回的所述渲染引擎的最新版本后,向所述移动服务返回所述渲染引擎的最新版本;
    所述终端的所述第一应用采用动态加载的方式从所述移动服务获取所述渲染引擎的最新版本。
  6. 根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
    所述终端在启动所述第一应用时或按预设时间周期,所述终端向所述第一服务器请求更新广告模板;
    所述终端接收所述第一服务器返回的广告模板的模板文件更新本地存储的广告模板的模板文件。
  7. 根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
    所述终端在启动所述第一应用时或按预设时间周期,所述终端检查所述终端的渲染引擎的版本是否为最新版本;
    若所述终端的所述渲染引擎的版本不是最新版本,则向应用第一服务器请求所述渲染引擎的最新版本。
  8. 根据权利要求1-7任一项所述的方法,其特征在于,在所述终端显示所述第一应用的所述第一界面之后,所述方法还包括:
    所述终端向所述第一服务器上传用户在所述第一界面中针对所述第一广告的交互行为,用于所述第一服务器根据所述用户在所述第一界面中针对所述第一广告的交互行为更新所述终端对应的用户画像。
  9. 根据权利要求1-8任一项所述的方法,其特征在于,在所述终端向第一服务器发送第一广告请求之前,所述方法还包括:
    所述终端接收到显示所述第一应用的所述第一界面的第一指示,其中,所述第一指示为启动所述第一应用的指示,所述第一界面为所述第一应用的主界面;或者,所述第一指示为切换所述第一应用的界面的操作。
  10. 根据权利要求1-9任一项所述的方法,其特征在于,所述方法还包括:
    所述终端向所述第一服务器发送第二广告请求,所述第二广告请求用于请求所述第一应用中所述第一广告位对应的第二广告;
    所述终端接收所述第一服务器返回的所述第二广告的内容以及第二广告模板的信息;其中所述第二广告模板用于指示所述第一广告位中呈现所述第二广告的内容的方式,且所述第二广告模板与所述第一广告模板不同;
    所述终端显示所述第一应用的所述第二界面,其中所述第二界面包括按照所述第二广告模板显示的所述第二广告。
  11. 根据权利要求1-10任一项所述的方法,其特征在于,所述第一广告模板或所述第二广播模板为文本文件。
  12. 根据权利要求1-11任一项所述的方法,其特征在于,所述渲染引擎为工具kit包。
  13. 根据权利要求1-12任一项所述的方法,其特征在于,所述第一广告请求包括所述终端的信息,所述第一广告位的信息,所述第一应用的信息,所述终端本地已缓存的广告模板的信息,所述终端的渲染引擎的版本信息中的一项或多项。
  14. 一种广告展示的方法,其特征在于,所述方法包括:
    服务器接收终端发送的第一广告请求,所述第一广告请求用于请求第一应用中第一广告位对应的第一广告;
    所述服务器向所述终端返回所述第一广告的内容以及所述第一广告模板的信息,其中所述第一广告模板用于指示所述终端在所述第一广告位中呈现所述第一广告的内容的方式。
  15. 根据权利要求14所述的方法,其特征在于,
    所述第一广告请求包括所述终端的信息,所述第一广告位的信息,所述第一应用的信息,所述终端本地已缓存的广告模板的信息,所述终端的渲染引擎的版本信息中的一项或多项。
  16. 根据权利要求14或15所述的方法,其特征在于,
    所述服务器根据所述第一广告请求中所述终端的信息对应的用户画像确定所述第一广告模板的信息。
  17. 根据权利要求14-16任一项所述的方法,其特征在于,
    所述服务器接收针对所述第一广告的内容的输入事件,其中,所述第一广告的内容包括商品名称、商品价格、图片信息、视频信息中一项或多项。
  18. 根据权利要求14-17任一项所述的方法,其特征在于,所述方法还包括:
    所述服务器接收所述终端发送的第二广告请求,所述第二广告请求用于请求所述第一应用中所述第一广告位对应的第二广告;
    所述服务器向所述终端返回所述第二广告的内容以及所述第二广告模板的信息,其中所述第二广告模板用于指示所述终端在所述第一广告位中呈现所述第一广告的内容的方式;其中,所述第二广告模板与所述第一广告模板不同。
  19. 一种终端,其特征在于,包括:处理器、存储器和显示屏,所述存储器、所述显示屏与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,以使得所述终端执行如权利要求1-13中任一项所述的广告展示的方法。
  20. 一种服务器,其特征在于,包括:处理器、存储器和通信接口,所述存储器、所述通信接口与所述处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述处理器从所述存储器中读取所述计算机指令,以使得所述服务器执行如权利要求14-18中任一项所述的广告展示的方法。
  21. 一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在终端上运行时,使得所述终端执行如权利要求1-13中任一项所述的广告展示的方法。
  22. 一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在服务器上运行时,使得所述服务器执行如权利要求14-18中任一项所述的广告展示的方法。
PCT/CN2023/111587 2022-08-26 2023-08-07 一种广告展示的方法、终端、服务器及系统 WO2024041367A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211034416.6A CN117670379A (zh) 2022-08-26 2022-08-26 一种广告展示的方法、终端、服务器及系统
CN202211034416.6 2022-08-26

Publications (1)

Publication Number Publication Date
WO2024041367A1 true WO2024041367A1 (zh) 2024-02-29

Family

ID=90012476

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/111587 WO2024041367A1 (zh) 2022-08-26 2023-08-07 一种广告展示的方法、终端、服务器及系统

Country Status (2)

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

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103578016A (zh) * 2012-08-02 2014-02-12 北京千橡网景科技发展有限公司 广告发布方法及系统
CN107533716A (zh) * 2015-06-19 2018-01-02 谷歌公司 用于低带宽通信环境的交互式广告渲染应用
CN108256892A (zh) * 2016-12-29 2018-07-06 北京奇虎科技有限公司 在网页页面中进行广告展示的方法、装置、服务器和系统
CN109819273A (zh) * 2018-12-20 2019-05-28 华为技术有限公司 一种端侧广告展示方法及对应的设备和服务器
CN113781115A (zh) * 2021-09-13 2021-12-10 北京奇艺世纪科技有限公司 广告展示方法、系统、设备及存储介质
CN114255084A (zh) * 2021-12-21 2022-03-29 北京沃东天骏信息技术有限公司 一种广告页面展示方法、装置及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103578016A (zh) * 2012-08-02 2014-02-12 北京千橡网景科技发展有限公司 广告发布方法及系统
CN107533716A (zh) * 2015-06-19 2018-01-02 谷歌公司 用于低带宽通信环境的交互式广告渲染应用
CN108256892A (zh) * 2016-12-29 2018-07-06 北京奇虎科技有限公司 在网页页面中进行广告展示的方法、装置、服务器和系统
CN109819273A (zh) * 2018-12-20 2019-05-28 华为技术有限公司 一种端侧广告展示方法及对应的设备和服务器
CN113781115A (zh) * 2021-09-13 2021-12-10 北京奇艺世纪科技有限公司 广告展示方法、系统、设备及存储介质
CN114255084A (zh) * 2021-12-21 2022-03-29 北京沃东天骏信息技术有限公司 一种广告页面展示方法、装置及系统

Also Published As

Publication number Publication date
CN117670379A (zh) 2024-03-08

Similar Documents

Publication Publication Date Title
WO2020238774A1 (zh) 一种通知消息的预览方法及电子设备
CN110430324B (zh) 一种应用开屏信息的显示方法、电子设备和存储介质
WO2022078295A1 (zh) 一种设备推荐方法及电子设备
CN113806105A (zh) 消息处理方法、装置、电子设备和可读存储介质
WO2021104117A1 (zh) 一种构建应用程序资源包的方法、构建装置及终端设备
CN114201097B (zh) 一种多应用程序之间的交互方法
WO2021169370A1 (zh) 服务元素的跨设备分配方法、终端设备及存储介质
WO2024055960A1 (zh) 一种广告投放方法、装置、云端服务器及可读存储介质
US20210029300A1 (en) Electronic device and method for providing content associated with camera function from electronic device
CN115333941A (zh) 获取应用运行情况的方法及相关设备
US20230251714A1 (en) Vibration method and apparatus, electronic device, and readable storage medium
CN115543145A (zh) 一种文件夹管理方法及装置
CN114444000A (zh) 页面布局文件的生成方法、装置、电子设备以及可读存储介质
WO2023005711A1 (zh) 一种服务的推荐方法及电子设备
WO2024041367A1 (zh) 一种广告展示的方法、终端、服务器及系统
CN115086888B (zh) 消息通知方法与装置、电子设备
CN115271775A (zh) 广告显示方法及相关设备
CN114938474B (zh) 一种弹幕处理方法及电子设备
WO2023134525A1 (zh) 一种外观设置方法和电子设备
CN117009023B (zh) 显示通知信息的方法及相关装置
WO2022267786A1 (zh) 一种快捷图标展示方法与终端设备
WO2024140123A1 (zh) 一种定格动画生成方法、电子设备、云端服务器及系统
WO2023207890A1 (zh) 一种界面显示方法及电子设备
WO2024067004A1 (zh) 推广方法、电子设备及系统
WO2023160512A1 (zh) 应用程序推广方法、相关装置及通信系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23856457

Country of ref document: EP

Kind code of ref document: A1