WO2022228063A1 - 广告获取的方法及其相关设备 - Google Patents

广告获取的方法及其相关设备 Download PDF

Info

Publication number
WO2022228063A1
WO2022228063A1 PCT/CN2022/085371 CN2022085371W WO2022228063A1 WO 2022228063 A1 WO2022228063 A1 WO 2022228063A1 CN 2022085371 W CN2022085371 W CN 2022085371W WO 2022228063 A1 WO2022228063 A1 WO 2022228063A1
Authority
WO
WIPO (PCT)
Prior art keywords
advertisement
terminal device
app
application
application program
Prior art date
Application number
PCT/CN2022/085371
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 华为技术有限公司
Priority to EP22794534.2A priority Critical patent/EP4318358A1/en
Publication of WO2022228063A1 publication Critical patent/WO2022228063A1/zh

Links

Images

Classifications

    • 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
    • G06Q30/0241Advertisements
    • G06Q30/0277Online advertisement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • 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
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • 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
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute

Definitions

  • the present application relates to the field of communications, and more particularly, to a method for obtaining advertisements and related devices.
  • the maintainer of the APP will push advertisements about the APP to the user.
  • the APP has two application installation states on the terminal device used by the user: one is an installed state, and the other is an uninstalled state.
  • advertisers have the problem of inaccurate advertising; for example, some advertisements want users to download the APP through the advertisement, and they need to be delivered to users who have not installed the APP to increase the popularity of the APP, but Served to users who have installed the app.
  • Some advertisements need to be delivered to users who have installed the APP to improve the utilization rate of the APP, but they are delivered to users who have not installed the APP. In this case, the delivery efficiency of the advertisement will be reduced.
  • the present application provides a method for obtaining advertisements and a related device.
  • the advertisement server determines, according to the APP installed on the terminal device and the list of APPs stored on the advertisement server, and the APP installation state orientation conditions of each advertisement to be placed Targeted ads are served. This ensures that the application installation state orientation is accurate, and improves the delivery efficiency of the application installation state oriented advertisement.
  • a method for obtaining an advertisement comprising: a terminal device sending an advertisement request to an advertisement server, where the advertisement request includes information of an application program (APP) set, where the application program set includes an already installed terminal device. Part or all of the application; the terminal device receives the advertisement information sent by the advertisement server in response to the advertisement request, the advertisement information includes first advertisement information and/or second advertisement information, wherein the information of the first advertisement Associated with the first application, the application set includes the first application, the second advertisement information instructs the terminal device to install the second application, and the application set does not include the second application.
  • APP application program
  • the terminal device reports the list of APPs installed on the terminal device
  • the advertisement server determines, according to the list of APPs installed on the terminal device and the APP installation status targeting conditions of each advertisement that needs to be placed, the ones that meet the targeting conditions.
  • Ads are served. It is realized that no matter whether the advertisement request sent by the user carries the advertisement tracking identifier or not, it can ensure the accurate orientation of the application installation status, thereby ensuring the accuracy of the application installation status targeted advertisement delivery, and improving the application installation status targeted advertisement delivery efficiency.
  • the application installation state orientation refers to: a certain APP is in an installed state, or the APP is in an uninstalled state. That is, the orientation of the application installation status can be understood as the installation status determined by an APP on the terminal device.
  • the APP installation state orientation is: the APP is already installed, or the APP is not installed.
  • the application installation state targeted advertisement refers to: the application installation state orientation set by a certain advertisement (or corresponding).
  • an advertisement targeting the application installation status can understand that the advertisement needs to be delivered to users who have installed a certain or some specific APP, or that the advertisement needs to be delivered to users who have not installed a certain or some specific APP.
  • the information of the application set includes: a package name of the application.
  • the name of the Jingdong APP package is: com.jingdong.app.mall.
  • the information of the application program set includes: the short encoding result corresponding to the package name of the application program and the identifier of the short encoding mode respectively.
  • the advertisement request sent by the terminal device only carries the short encoding result corresponding to the package name of the application and the identifier of the short encoding method, it is not necessary to carry a huge number of application package names, which avoids excessive consumption of user traffic , reducing the delay of the advertisement request, thereby improving the display rate of the advertisement and the delivery efficiency of the advertisement with the application installation status orientation, and improving the user experience.
  • the short encoding method includes all encoding methods that can reduce the length of the character to be encoded, that is, the length of the character before encoding is greater than the length of the character after encoding.
  • the method before the terminal device sends an advertisement request to the advertisement server, the method further includes: the terminal device sends a query request to the advertisement server, where the query request includes the installed Application program; the terminal device receives the query response information sent by the advertisement server, where the query response information includes: the information of the application program set.
  • the storage resources of the advertisement server can be saved, the normal operation of the advertisement server is ensured, and the working efficiency of the advertisement server is ensured.
  • the set of application programs is an intersection of an application program that has been installed by the terminal device and an application program stored by the advertisement server, and the application program stored by the advertisement server is associated with an advertisement to be delivered by the advertisement server.
  • the advertisement server obtains the intersection of the two APPs according to the APP installed on the terminal device and the APP list stored on the advertisement server, and sends the intersection of the APPs to the terminal device. It ensures the accurate orientation of the application installation status, thereby ensuring the accuracy of the application installation status-targeted advertisement delivery, and also reduces the delay of the user's advertisement request, thereby improving the display rate of the advertisement and improving the application installation status-targeted advertisement delivery. efficiency.
  • the terminal device may send a query request to the APP list service module every time it is powered on, or every time it detects that a new APP is downloaded and installed, or periodically (eg, every one day or two days, etc.).
  • the terminal device may also determine the timing of sending the query request according to the current network status of the terminal device (eg, the connected network type (WiFi/LAN/cellular network), network speed, etc.).
  • the first advertisement information includes: a download address of a first advertisement material, a package name of the first application, and an address link of a first page, where the first page is the first page.
  • the page of the application program; and/or, the second advertisement information includes: the download address of the second advertisement material and the package name of the second application program.
  • the method further includes: displaying, by the terminal device, a first interface, where the first interface includes an advertisement material of the first advertisement; the terminal device detecting the first interface acting on the first advertisement an operation; when detecting the first operation, the terminal device displays the first page in the first application program.
  • the method further includes: displaying, by the terminal device, a second interface, the second interface including the second advertisement material; and detecting, by the terminal device, a second operation acting on the second advertisement ; When detecting the second operation, the terminal device displays the download page of the second application.
  • the method before the terminal device sends the advertisement request to the advertisement server, the method further includes: the terminal device receives a third operation of the user, where the third operation is used to trigger the terminal device to send an advertisement In the advertisement request, the third operation includes: an operation for opening an application, or an operation for clicking a link in the application.
  • the third operation may include: the user opens a certain APP (for example, the Huawei Video APP) on the terminal device, or enters an interface specified by a certain APP, or the user opens a certain video type on the terminal device.
  • a certain APP for example, the Huawei Video APP
  • the user's pause operation is detected, and an advertisement request is triggered.
  • the APP detects any of these operations, triggers the terminal device to generate an advertisement request, and sends an advertisement request.
  • the advertisement request may also be automatically triggered by the APP on the terminal device during the running process. Users only need to open an APP, and the APP can automatically trigger the sending of advertisement requests during the running process.
  • a method for obtaining advertisements is provided.
  • the method is applied to an advertisement system.
  • the system includes a terminal device and an advertisement server.
  • the method includes: the terminal device sends an advertisement request to the advertisement server, and the advertisement request includes an application Information about the program collection, the application program collection includes a part or all of the application programs that have been installed on the terminal device; the advertisement server determines, according to the advertisement request and the advertisements with application installation orientation, the advertisements that meet the delivery conditions, and the application installation orientation
  • the advertisements include: advertisements targeting installed applications, and/or advertisements targeting applications that are not installed; the advertisement server sends advertisement information in response to the advertisement request to the terminal device, and the advertisement information includes the first advertisement information.
  • advertisement information and/or second advertisement information wherein the information of the first advertisement is associated with a first application program, the application program set includes the first application program, and the second advertisement information instructs the terminal device to install a second advertisement application, the set of applications does not include the second application.
  • the terminal device reports installed APPs
  • the advertisement server determines the advertisements that meet the targeting conditions according to the APP installed on the terminal device and the APP installation status targeting conditions of each advertisement to be delivered. It is realized that no matter whether the advertisement request sent by the user carries the advertisement tracking identifier or not, it can ensure the accurate orientation of the application installation status, thereby ensuring the accuracy of the application installation status targeted advertisement delivery, and improving the application installation status targeted advertisement delivery efficiency.
  • the information of the application set includes: a package name of the application.
  • the information of the application program set includes: the short encoding result corresponding to the package name of the application program and the identifier of the short encoding mode respectively.
  • the method before the terminal device sends an advertisement request to the advertisement server, the method further includes: the terminal device sends a query request to the advertisement server, where the query request includes that the terminal device has installed s application.
  • the advertisement server determines the application program set according to the application program that has been installed on the terminal device and the application program stored by the advertisement server, and the advertisement server obtains the information of the application program set according to the application program set; the advertisement server sends to the terminal device. Information about this application collection.
  • the APP list service module on the advertisement server will send the set of APPs to the terminal device used by the user, which can save the storage resources of the advertisement server, ensure that the advertisement server can work normally, and ensure the working efficiency of the advertisement server. .
  • the set of application programs is an intersection of an application program that has been installed by the terminal device and an application program stored by the advertisement server, and the application program stored by the advertisement server and the application program that the advertisement server needs to deliver Ad association.
  • the advertisement server obtains the intersection of the APPs installed on the terminal device and the APP list stored on the advertisement server according to the two APPs.
  • the terminal device carries the APP intersection when requesting an advertisement.
  • the advertisement server determines the advertisements that meet the targeting conditions for delivery. Thereby, the accuracy of the application installation state-targeted advertisement delivery is ensured, and the delivery efficiency of the application installation state-targeted advertisement is improved.
  • the advertisement server obtains, according to the application program set,
  • the information of the application program set includes: the advertisement server performs short coding on the package names of the application programs included in the application program set according to the application program set by using the short coding method, respectively, and obtains the short coding results corresponding to the package names of the application programs respectively. ;
  • the advertisement server obtains the information of the application program set according to the short encoding result corresponding to the package name of the application program and the short encoding method.
  • the short encoding method includes all encoding methods that can reduce the length of the character to be encoded, that is, the length of the character before encoding is greater than the length of the character after encoding.
  • the method before the advertisement server determines an advertisement that meets the delivery conditions, the method further includes: the advertisement server determines a corresponding decoding method according to the identifier of the short encoding method; the advertisement service determines a corresponding decoding method according to the decoding method; In the method, the short encoding results corresponding to the package names of the application programs are decoded to obtain the application program set.
  • the first advertisement information includes: a download address of an advertisement material, a package name of the first application, and an address link of a first page, where the first page is the first application and/or, the second advertisement information includes: the download address of the second advertisement material and the package name of the second application program.
  • the method further includes: displaying, by the terminal device, a first interface, where the first interface includes an advertisement material of the first advertisement; the terminal device detecting the first interface acting on the first advertisement an operation; when detecting the first operation, the terminal device displays the first page in the first application program.
  • the method further includes: displaying, by the terminal device, a second interface, the second interface including the second advertisement; the terminal device detecting a second operation acting on the second advertisement; When the second operation is detected, the terminal device displays the download page of the second application.
  • the method before the terminal device sends the advertisement request to the advertisement server, the method further includes: the terminal device receives a third operation of the user, where the third operation is used to trigger the terminal device to send an advertisement In the advertisement request, the third operation includes: an operation for opening an application, or an operation for clicking a link in the application.
  • a communication apparatus including a unit for performing each step in the above first aspect or any possible implementation manner of the first aspect.
  • a communication device comprising at least one processor and a memory, the processor and the memory being coupled, the memory storing program instructions that are executed when the program instructions stored in the memory are executed by the processor A method in a possible implementation manner of the above first aspect or any one of the first aspects.
  • a communication device in a fifth aspect, includes at least one processor and an interface circuit, where the at least one processor is configured to execute the method in the above first aspect or any possible implementation manner of the first aspect.
  • a terminal device in a sixth aspect, includes any one of the communication apparatuses provided in the third aspect, the fourth aspect, or the fifth aspect.
  • a communication device comprising at least one processor and a memory, the processor and the memory being coupled, the memory storing program instructions that are executed when the program instructions stored in the memory are executed by the processor A method performed by an advertisement server in possible implementation manners of the above second aspect or any one of the second aspects.
  • a communication apparatus comprising a unit for performing the steps performed by the advertisement server in the above second aspect or any possible implementation manner of the second aspect.
  • a communication device in a ninth aspect, includes at least one processor and an interface circuit, and the at least one processor is configured to execute the above second aspect or, in a possible implementation manner of any aspect of the second aspect, to be executed by an advertisement server Methods.
  • an advertisement server includes any one of the communication devices provided in the seventh aspect, the eighth aspect, or the ninth aspect.
  • a computer program product includes a computer program, and when executed by a processor, the computer program is used to execute the first aspect or any possible implementation of the first aspect.
  • a twelfth aspect provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when the computer program is executed, is used to execute the first aspect or any possible possible implementation of the first aspect.
  • a thirteenth aspect provides a chip, the chip comprising: a processor for calling and running a computer program from a memory, so that a communication device installed with the chip executes the first aspect or any possible possibility in the first aspect
  • the method in the implementation mode, or the method in the second aspect or any possible implementation mode in the second aspect is performed.
  • the method and related device for obtaining advertisements provided by this application are provided by the user by periodically reporting the APP installed on the terminal device, and the advertisement server obtains both the APP installed on the terminal device and the list of APPs stored on the advertisement server. APP intersection, and send the APP intersection to the terminal device.
  • the terminal device carries the APP intersection when requesting an advertisement.
  • the advertisement server determines the advertisements that meet the targeting conditions for delivery. It is realized that no matter whether the advertisement request sent by the user carries the advertisement tracking identifier or not, the application installation status can be guaranteed to be accurate, thus ensuring the accuracy of the application installation status-oriented advertisement delivery, and also reducing the delay of the user's advertisement request. , so as to improve the display rate of the advertisement, improve the delivery efficiency of the application installation state-targeted advertisement, and improve the user experience.
  • FIG. 1 is a schematic diagram of an example of the architecture of a communication system suitable for an embodiment of the present application.
  • FIG. 2 is a schematic diagram of another example of the architecture of a communication system applicable to an embodiment of the present application.
  • FIG. 3 is an example of a schematic diagram of software interaction when a terminal device requests an advertisement from an advertisement server in an Android (Android) operating system with a layered architecture.
  • Android Android
  • FIG. 4 is a schematic interface diagram of an example of an advertiser creating an application installation state-targeted advertisement on an advertisement platform provided by the present application.
  • FIG. 5 is a schematic flowchart of an example of an advertisement acquisition method provided by the present application.
  • FIG. 6 is a schematic interface diagram of an example of a terminal device displaying an advertisement directed to an installed APP provided by the present application.
  • FIG. 7 is a schematic interface diagram of another example of a terminal device displaying an advertisement directed to an installed APP provided by the present application.
  • FIG. 8 is a schematic interface diagram of another example of a terminal device displaying an advertisement directed to an installed APP provided by the present application.
  • FIG. 9 is a schematic interface diagram of another example of a terminal device displaying an advertisement directed to an already installed APP provided by the present application.
  • FIG. 10 is a schematic interface diagram of an example of a terminal device displaying an advertisement directed to an APP that is not installed according to the present application.
  • FIG. 11 is a schematic interface diagram of another example of a terminal device displaying an advertisement directed to an APP that is not installed according to the present application.
  • FIG. 12 is a schematic flowchart of another example of a method for obtaining advertisements provided by the present application.
  • FIG. 13 is a schematic flowchart of another example of the method for obtaining advertisements provided by the present application.
  • FIG. 14 is a schematic flowchart of another example of the method for obtaining advertisements provided by the present application.
  • FIG. 15 is a schematic block diagram of an example of a communication structure provided by an embodiment of the present application.
  • FIG. 16 is a schematic block diagram of an example of the structure of a communication device provided by an embodiment of the present application.
  • first and second are only used for descriptive purposes, and should not be construed as indicating or implying relative importance or implicitly indicating the number of indicated technical features.
  • a feature defined as “first” or “second” may expressly or implicitly include one or more of that feature.
  • plural means two or more.
  • various aspects or features of the present application may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques.
  • article of manufacture encompasses a computer program accessible from any computer readable device, carrier or medium.
  • computer readable media may include, but are not limited to: magnetic storage devices (eg, hard disks, floppy disks, or magnetic tapes, etc.), optical disks (eg, compact discs (CDs), digital versatile discs (DVDs) etc.), smart cards and flash memory devices (eg, erasable programmable read-only memory (EPROM), card, stick or key drives, etc.).
  • various storage media described herein can represent one or more devices and/or other machine-readable media for storing information.
  • the term "machine-readable medium” may include, but is not limited to, wireless channels and various other media capable of storing, containing, and/or carrying instructions and/or data.
  • GSM Global System of Mobile communication
  • CDMA Code Division Multiple Access
  • CDMA Wideband Code Division Multiple Access
  • WCDMA Wideband Code Division Multiple Access
  • GSM Global System of Mobile communication
  • CDMA Code Division Multiple Access
  • WCDMA Wideband Code Division Multiple Access
  • GPRS General Packet Radio Service
  • LTE Long Term Evolution
  • FDD Frequency Division Duplex
  • TDD Time Division Duplex
  • UMTS Universal Mobile Telecommunication System
  • WiMAX Worldwide Interoperability for Microwave Access
  • 5G 5th Generation
  • 5G 5th Generation
  • New Radio New Radio
  • various aspects or features of the present application may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques.
  • article of manufacture encompasses a computer program accessible from any computer readable device, carrier or medium.
  • computer readable media may include, but are not limited to: magnetic storage devices (eg, hard disks, floppy disks, or magnetic tapes, etc.), optical disks (eg, compact discs (CDs), digital versatile discs (DVDs) etc.), smart cards and flash memory devices (eg, erasable programmable read-only memory (EPROM), card, stick or key drives, etc.).
  • various storage media described herein can represent one or more devices and/or other machine-readable media for storing information.
  • the term "machine-readable medium” may include, but is not limited to, wireless channels and various other media capable of storing, containing, and/or carrying instructions and/or data.
  • the maintainer of the APP will push advertisements about the APP to the users.
  • the maintainer of a shopping APP will place advertisements about the shopping APP on its own advertising platform, or it will also place advertisements about the shopping APP on other advertising platforms (such as Huawei).
  • the APP has two application installation states on the terminal device used by the user: one is the installed state, that is, the APP has been installed on the user's terminal device. The other is an uninstalled state, that is, the APP has not been installed on the user's terminal device.
  • the application installation state orientation refers to: an APP is in an installed state, or the APP is in an uninstalled state. That is, the orientation of the application installation status can be understood as the installation status determined by an APP on the terminal device.
  • the APP installation state orientation is: the APP is already installed, or the APP is not installed.
  • the application installation state-targeted advertisement (or may also be referred to as: an application installation-state-targeted advertisement) refers to the application installation state-targeted (or corresponding) set by a certain advertisement.
  • an advertisement targeting the application installation status can understand that the advertisement needs to be delivered to users who have installed a certain or some specific APP, or that the advertisement needs to be delivered to users who have not installed a certain or some specific APP.
  • the targeting condition set is: users who have not installed the "Huawei Video” APP, then the advertisement is an advertisement targeted for the installation state of the application.
  • an advertiser (or it can also be referred to as an ad advertiser, an APP maintainer, etc.)
  • the purpose of advertising is to promote an application, which can be understood as promoting a new user of an APP
  • the target user group is generally not yet
  • the advertisements placed by advertisers are targeted to users who have not installed the APP.
  • the purpose of the advertiser's advertisement is to promote the application, and the application promotion can be understood as a promotional activity on the APP
  • the target user group is generally the users who have installed the APP
  • the advertising targeting of the advertiser is that the APP has been installed. User.
  • a user who installs a certain APP or a user who does not install a certain APP refers to: a terminal device used by the user has an APP installed or a certain APP is not installed.
  • a user who has installed an APP or a user who has not installed an APP can be understood as a terminal device with an APP installed or a terminal device without an APP installed.
  • the big data platforms owned by general advertisement advertisers have the ability to do crowd grouping labels. That is, users are divided into users who have installed one or some APPs and users who have not installed one or some APPs. Take the specific APP as Taobao APP as an example. Assuming that the advertisement that an advertiser wants to place is for the purpose of promoting Taobao APP (that is, the target audience for advertising is users who have not installed the Taobao APP), the advertiser can obtain the grouping label from the grouping label according to the grouping label. "Groups of people who have installed Taobao APP".
  • the advertisement tracking identifier for example: Google advertising identifier (GAID), open anonymous device identifier (OAID) carried in the advertisement request will be based on the advertisement request. ), etc.
  • the advertisement tracking identifier for example: Google advertising identifier (GAID), open anonymous device identifier (OAID) carried in the advertisement request will be based on the advertisement request. ), etc.
  • the ad delivery provider will not be able to obtain the ad tracking identifier in the ad request sent by the user, that is, the restricted ad delivery provider cannot use the user's ad tracking identifier. If the advertiser cannot use the crowd grouping label, the advertiser will not be able to target the application installation status when placing the advertisement, which will seriously reduce the efficiency of advertisement delivery. In addition, the data of "population groups with installed apps" classified and counted by the advertiser may be inaccurate, which will lead to inaccurate targeting of the app installation status and reduce the accuracy of the advertisements targeted to the application installation status.
  • the present application provides a method for obtaining advertisements.
  • the advertisement server obtains two APPs according to the APP installed on the terminal device and the APP list stored on the advertisement server. The intersection of the APP of the user.
  • the terminal device carries the APP intersection when requesting an advertisement.
  • the advertisement server determines the advertisements that meet the targeting conditions for delivery. It is realized that no matter whether the advertisement request sent by the user carries the advertisement tracking identifier or not, it can ensure the accurate orientation of the application installation status, thereby ensuring the accuracy of the application installation status targeted advertisement delivery, and improving the application installation status targeted advertisement delivery efficiency.
  • FIG. 1 shows an example of a schematic diagram of the architecture of a communication system suitable for an embodiment of the present application.
  • the communication system includes a terminal device used by a user and an advertisement server used by an APP maintainer.
  • the APP maintainer will use the advertisement server to deliver advertisements about the APP to users.
  • the maintainer of Taobao APP (Alibaba) will place advertisements about Taobao APP to users in the ad server maintained by itself, and will also place advertisements about Taobao APP to users in the advertisement server maintained by Huawei, or, it may also be
  • the advertisements about Taobao APP are delivered to users in the advertisement server maintained by Baidu.
  • the advertisement server includes an APP list service module and an advertisement service module.
  • the advertising SDK on the terminal device is mainly used to provide APP integration, and provide services such as advertising-related request, playback, and event reporting.
  • the APP list service module on the advertising server is mainly used to obtain the intersection of the user's installed APP list reported by the advertising SDK module and the APP list stored on the advertising server, and return the APP intersection to the advertising SDK module.
  • the advertisement service module on the advertisement server is mainly used to provide requested advertisement service.
  • data and information can be transmitted between the terminal device and the advertisement server through LTE communication technology, 5G communication technology, and the like.
  • LTE communication technology Long Term Evolution
  • 5G communication technology Fifth Generationан ⁇
  • FIG. 2 shows another example of a schematic diagram of the architecture of a communication system suitable for the embodiment of the present application.
  • the communication system includes a terminal device used by a user and an advertisement server used by an APP maintainer.
  • a plurality of APPs are installed on the terminal device, and an advertising SDK module is integrated on the terminal device, that is, the advertising SDK module is not integrated on the APP, but on the system of the terminal device.
  • the advertising SDK module can interact with multiple APPs to obtain APP information installed on the terminal device.
  • the advertisement server includes an APP list service module and an advertisement service module.
  • an advertisement resource pool is maintained in the advertisement server (for example, in the advertisement service module), and the advertisement resource pool stores the advertisement materials uploaded by various advertisers (for example, the advertisement materials appearing in the advertisements are stored in the advertisement resource pool). materials such as text, images, videos, and sounds) and advertising information (for example, ad name, ad type, and creative link address, etc.). in.
  • the advertisements maintained in the inventory pool include application-installation-targeted advertisements.
  • the above advertisement information refers to a description parameter used to indicate the characteristic attributes of the advertisement to be played, such as the ID, name, advertisement type, and link address of the advertisement material, etc., which are not limited in this embodiment of the present application.
  • the above-mentioned advertisement material refers to the specific advertisement content displayed on the display interface of the terminal device, for example, the text, pictures, video, sound, etc. appearing in the advertisement, which are not limited in this embodiment of the present application.
  • system architectures shown in FIG. 1 and FIG. 2 do not constitute a specific limitation on the system architectures of the terminal device and the advertisement server.
  • the system architecture of the terminal device and the advertisement server may include more or less units or modules than shown, or some units are combined, or some units are split, or different component units.
  • the illustrated units may be implemented in hardware, software or a combination of software and hardware. The embodiments of the present application are not limited herein.
  • FIG. 3 is an example of a schematic diagram of software interaction when a terminal device requests an advertisement from an advertisement server in an embodiment of the present application, using an Android operating system with a layered architecture as an example.
  • the layered architecture can divide the software into several layers, and each layer has a clear role and division of labor. Layers communicate with each other through software interfaces.
  • the software structure of the terminal device can be divided into three layers from top to bottom: the application layer (referred to as the application layer), the application framework layer (referred to as the framework layer), the system library, the Android runtime and the kernel layer ( Also known as the driver layer).
  • the application layer can include a series of application packages, such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, shopping APP, short message and desktop launcher (Launcher) and other applications .
  • the application program is simply referred to as an application (ie, APP) below.
  • the application on the terminal device can be a native application (such as the application installed in the terminal device when the operating system is installed before the terminal device leaves the factory), or it can be a third-party application (such as the application downloaded and installed by the user through the application store).
  • the application examples are not limited.
  • the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
  • the application framework layer may include a window management server (window manager service, WMS), an input event management server (input manager service, IMS) and an advertisement SDK module.
  • WMS window management server
  • IMS input event management server
  • advertisement SDK module an advertisement SDK module.
  • the application framework layer may also include content providers, view systems, telephony managers, resource managers, notification managers, etc. (not shown in Figure 3).
  • WMS carries the data and attributes related to the "interface", and is used to manage the state related to the "interface”. For example, it is used to manage window procedures and event dispatch.
  • managing the window program refers to orderly output to the physical screen or other display device with the assistance of the application server and the WMS according to the display request of the application program.
  • Event dispatch refers to dispatching user events from keyboard, physical keys, touch screen, mouse, trackball (TraceBoll), etc. to corresponding controls or windows.
  • the IMS can be used to translate, encapsulate, etc. the original input event, get the input event with more information, and send it to the WMS.
  • the WMS stores the clickable areas (such as controls) of each application and the position of the focus window. information, etc. Therefore, WMS can correctly dispatch input events to the specified control or focus window.
  • the advertising SDK module is mainly used to provide services such as advertisement-related request, playback, and event reporting.
  • the APP list service module on the advertising server is mainly used to obtain the intersection of the user's installed APP list reported by the advertising SDK module and the APP list stored on the advertising server, and return the APP intersection to the advertising SDK module.
  • the advertisement service module on the advertisement server is mainly used to provide requested advertisement service.
  • the system library and Android runtime include the functions that FWK needs to call, the Android core library, and the Android virtual machine.
  • a system library can include multiple functional modules. For example: browser kernel, three-dimensional (3 dimensional, 3D) graphics, font library, etc.
  • a system library can include multiple functional modules. For example: surface manager (surface manager), media library (Media Libraries), 3D graphics processing library (eg: OpenGL ES), 2D graphics engine (eg: SGL), etc.
  • surface manager surface manager
  • media library Media Libraries
  • 3D graphics processing library eg: OpenGL ES
  • 2D graphics engine eg: SGL
  • the kernel layer is the layer between hardware and software.
  • the kernel layer can include display drivers, input/output device drivers (eg, keyboard, touch screen, headset, speaker, microphone, etc.), device nodes, camera drivers, audio drivers, and sensor drivers.
  • input/output device drivers eg, keyboard, touch screen, headset, speaker, microphone, etc.
  • device nodes e.g., camera drivers, audio drivers, and sensor drivers.
  • the user performs input operations through the input device, and the kernel layer can generate corresponding original input events according to the input operations and store them in the device node.
  • Input/output device drivers can detect user input events. For example, the action of the user launching the app.
  • the input/output device driver or the sensor driver of the terminal device can detect the user's input event.
  • the input event can be the input event that the user clicks a button on an APP interface to enter the next-level interface of the APP interface, and the input/output device driver or sensor driver of the terminal device reports the user's input event to the IMS.
  • the MS distributes the input event to the corresponding application.
  • the application calls the advertising SDK module, and the advertising SDK module calls the data acquisition module to obtain the intersection of the APP list installed on the terminal device, and the APP list intersection is the intersection of the APP installed on the terminal device and the APP list stored on the advertising server.
  • the advertisement service module determines the list of APPs installed on the terminal device according to the intersection of the APP lists, determines the advertisements that meet the advertising conditions according to the list of APPs installed by the user and the targeting requirements of advertisements, and sends them to the advertisement SDK module, and the advertisement SDK module sends the advertisement information.
  • the WMS recalls the display driver on the terminal device, so as to realize the synchronous display of the advertisement to be placed on the display screen of the terminal device.
  • FIG. 3 only takes an Android system with a layered architecture as an example to introduce a schematic diagram of software interaction when a terminal device requests an advertisement from an advertisement server.
  • the present application does not limit the specific architectures of the terminal device and the advertisement server software system.
  • the terminal device in this embodiment of the present application may refer to a user equipment, an access terminal, a subscriber unit, a subscriber station, a mobile station, a mobile station, a remote station, a remote terminal, a mobile device, a user terminal, a terminal, a wireless communication device, a user agent or user device.
  • the terminal device may also be a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), a wireless communication Functional handheld devices, computing devices or other processing devices connected to wireless modems, in-vehicle devices, wearable devices, terminal devices in 5G networks or terminals in the future evolution of the public land mobile network (PLMN) equipment, etc., which are not limited in this embodiment of the present application.
  • SIP Session Initiation Protocol
  • WLL Wireless Local Loop
  • PDA Personal Digital Assistant
  • PLMN public land mobile network
  • the terminal device in the embodiment of the present application may be: a smart phone, a smart TV, a tablet computer, a netbook, a PDA, a computer handheld communication device, a handheld computing device, a smart bracelet, a smart hand, a wearable wrist device, Smart glasses, etc.
  • the embodiments of the present application are not limited herein.
  • FIG. 4 shows an example of a schematic interface diagram for an advertiser to create an application installation state-oriented advertisement on an advertising platform provided by the present application, and the advertiser can create an advertisement task on the interface.
  • the advertiser can select or input an APP to which the advertisement needs to be targeted in the “Promotion Application ID” menu bar. For example, “Jingdong APP”. After selecting, you can select the conditions that the ad needs to be targeted in the "New Targeting" menu bar.
  • the conditions that the advertisement needs to be targeted include: the region where the advertisement needs to be targeted, the gender of the user, the age of the user, whether the "APP" is installed, the behavior of the "APP", the classification of the device to be placed, and the network connection of the device to be placed. way etc.
  • Advertisers can choose one or more of these targeting criteria. For example, suppose the advertiser has selected: "JD.com APP" has been installed. Then the advertisement will be targeted to users who have installed the "JD APP". If the advertiser selects multiple conditions among these targeting conditions, the advertisement will be targeted to users who satisfy these multiple conditions. After the advertiser has selected the targeting conditions, the information of the selected targeting conditions and the information of the advertisement can be entered into the advertisement server, and the advertisement server can deliver the advertisement to users who meet the targeting conditions according to the targeting conditions of the advertisement.
  • an interface diagram for an advertiser to create an advertisement task may include more or less elements than those shown in FIG. 4 , or combine some elements, or split some elements, or different elements, etc. .
  • other orientation conditions and the like may be included than those of the orientation shown in FIG. 2 .
  • the embodiments of the present application are not limited herein.
  • FIG. 5 is a schematic flowchart of an example of a method 100 for obtaining advertisements provided by the present application.
  • the method 100 can be applied in the system shown in FIG. 1 .
  • the advertisements targeted by the app install state that the advertiser needs to deliver in the ad server include:
  • Advertisement A Targeted at users who have installed Taobao APP.
  • Advertisement B Targeted at users who have installed the JD APP.
  • Advertisement C Targeted at users who do not have the Pinduoduo app installed.
  • the advertisement distributor may enter the advertisements targeted to the installation state of these applications to the advertisement server on the interface shown in FIG. 4 .
  • the application list stored in the APP list service module in the advertisement server is shown in Table 1.
  • Table 1 The list of applications stored in the APP list service module
  • the APPs (or also called APP package names) stored in the APP list service module on the advertisement server include:
  • Table 1 is only exemplary and should not impose any limitations on the examples of the present application.
  • the number of APPs actually stored in the APP list service module is huge, and is not limited to what is shown in Table 1.
  • the APPs that the user has installed on the terminal device include:
  • the above-mentioned APPs already installed on the terminal device are only exemplary. No limitations should be imposed on the examples of this application. In other embodiments of the present application, the number of APPs already installed on the terminal device is huge, which may include the APPs in the above-mentioned examples, or not include the APPs in the above-mentioned examples. The embodiments of the present application are not limited herein.
  • the method 100 includes: S110 to S190.
  • the terminal device periodically sends a query request to the APP list service module on the advertisement server, where the query request includes a list of APPs installed on the terminal device by the user.
  • the advertisement SDK module in the terminal device periodically sends a query request to the APP list service module on the advertisement server.
  • the terminal device may send the query request to the APP list service module on the advertisement server by invoking the "interface for querying the APP list with advertisements targeted for application installation status", where the query request includes the user's information on the terminal device. List of installed apps.
  • the terminal device may report to the APP list service module every time it is powered on, or every time it detects that a new APP is downloaded and installed, or periodically (for example, every other day or two days, etc.). Send a query request.
  • the terminal device may also determine the timing for sending the query request according to the current network state of the terminal device (eg, the type of connected network, network speed, etc.).
  • the user may also enable the advertising SDK module or the terminal device to obtain the information of the APP installed on the terminal device by means of authorization.
  • the terminal device may display a pop-up box to the user for prompting the user to select "whether to allow obtaining the list of APPs installed on the terminal device".
  • the user agrees to obtain the list of APPs installed on the terminal device through confirmation, then the advertising SDK module or the terminal device can obtain the information of the APP installed on the terminal device, and send the query request to the APP list service module.
  • the advertising SDK module or the terminal device may be activated every time the terminal device is powered on, or every time it is detected that a new APP is downloaded and installed. , or periodically (for example, every other day or two days, etc.) to automatically acquire the APP information installed on the terminal device, and send the query request to the APP list service module.
  • the parameter code carried by the query request may be as follows:
  • the APP list service module on the advertisement server determines the intersection of APPs according to the installed APP list on the terminal device and the APP list stored in the APP list service module.
  • the APPs stored in the APP list service module are APPs related to advertisements that the advertiser needs to place. Among the advertisements that advertisers need to place, some advertisements need to be targeted to users who have installed some or a certain APP, some ads need to be targeted to users who have not installed some or a certain APP, and some advertisements have no application installation targeting requirements. It can be cast to users who have installed some or a certain APP and users who have not installed some or a certain APP.
  • the APP list stored in the APP list service module includes: APPs with application installation status targeting (including installed and non-installed) and APPs associated with advertisements without application installation status targeting.
  • these APPs include some built-in APPs in the system, and these built-in APPs in the system will not be used for advertisement placement.
  • these APPs there are still some APPs that are not currently used by the advertising platform, and these APPs will not be used for advertising. Therefore, among the APPs actually installed on the terminal device, the APPs that will not be used for advertisement placement can be filtered out.
  • the APPs stored in the APP list service module on the advertisement server are basically used for advertisement delivery, and some of these APPs also need to deliver advertisements targeted to the application installation status.
  • the APP intersection can be determined from the APP list installed on the terminal device and the APP list stored in the APP list service module.
  • the APPs included in the APP intersection are basically used for advertising, so that the APPs that need to be advertised can be accurately determined.
  • the APPs stored in the APP list service module on the advertisement server include:
  • the APPs installed on the terminal device include:
  • the APP intersection includes:
  • the APP list service module on the advertisement server sends the APP intersection to the terminal device.
  • the APP list service module may send the APP intersection to the advertising SDK module in the terminal device.
  • the APP intersection if the APP intersection is stored on the advertisement server, there must be an identifier of the user corresponding to the APP intersection.
  • the user if the user has set restrictions on advertisement tracking, the user's identity cannot be determined in the advertisement request sent by the user received by the advertisement server, that is, the APP intersection cannot be associated with the user.
  • the ad server cannot authenticate the ad request sent by the user, that is, it cannot determine whether the ad request is a legitimate request. If the ad request is a malicious request by an attacker, it may cause a denial of service ( denial of service, Dos) attack.
  • Dos denial of service
  • the attacker only needs to change the user ID of the ad request, and can send the ad request infinitely, which will greatly consume the storage resources of the ad server, and even make the ad server unusable. Therefore, in S130, the APP list service module on the advertisement server will send the APP intersection to the terminal device used by the user, which can save the storage resources of the advertisement server, ensure that the advertisement server can work normally, and ensure the working efficiency of the advertisement server. .
  • the APP intersection includes:
  • the parameter code carried when the APP list service module sends the APP intersection to the advertising SDK module may be as follows:
  • the terminal device receives and saves the APP intersection.
  • the advertisement SDK module in the terminal device may store the APP intersection.
  • the APP intersection saved by the advertising SDK module is:
  • the steps S110 to S140 may be performed multiple times, for example, may be performed periodically, or may be performed after the terminal device is powered on every time, or every time it detects There is a new APP downloaded and installed and executed.
  • the embodiments of the present application are not limited herein.
  • the terminal device receives an operation of the user, and the operation is used to trigger sending an advertisement request.
  • the operation may include: the user opens a certain APP (such as Huawei Video APP) on the terminal device, or enters the interface specified by a certain APP, or, after the user opens a certain video APP on the terminal device, click One of the displayed videos, or, during the video playback process, detects the user's pause operation, and triggers an advertisement request to be sent.
  • the user opens an APP (such as a shopping APP) on the terminal device, or the user clicks a link in a certain APP (such as a shopping APP) to open a product interface, etc., on the terminal device
  • the APP detects any of these operations, triggers the terminal device to generate an advertisement request, and sends an advertisement request.
  • the embodiments of the present application are not limited herein.
  • the advertisement request may also be automatically triggered by the APP on the terminal device during the running process.
  • the APP can automatically trigger the sending of advertisement requests during the running process.
  • the APP can automatically trigger the terminal device to send an advertisement request periodically (for example, every other day or two days, etc.), or the APP can also be based on the current network status of the terminal device (for example, the connected network type, network speed, etc.) etc.) to determine when to trigger the sending of an ad request.
  • the embodiments of the present application are not limited herein.
  • the terminal device sends an advertisement request (or may also be referred to as an advertisement query request) to an advertisement module on the advertisement server according to the operation, where the advertisement request includes the intersection of the APP.
  • the advertisement SDK module in the terminal device may send the advertisement request.
  • the terminal device may be based on a hypertext transfer protocol (HTTP), a secure-targeted HTTP channel (HTTPS), a file transfer protocol (FTP), or a secure file transfer protocol (secure file).
  • HTTP hypertext transfer protocol
  • HTTPS secure-targeted HTTP channel
  • FTP file transfer protocol
  • secure file secure file
  • the client when the user opens a certain client installed in the terminal device, the client can be triggered to call the advertisement SDK module, and send an advertisement request to the advertisement server through the JavaScript object notation (JavaScript object notation, JSON) message format in HTTP. .
  • JavaScript object notation JavaScript object notation, JSON
  • the above advertisement request may also carry parameters such as the application package name (pkgname) of the APP currently used by the user, the advertisement slot ID (slotid), and the requested advertisement type (adtype), so that the advertisement server that receives the advertisement request can The advertisement information matching the advertisement request is determined.
  • the above-mentioned advertisement slot ID is used to uniquely represent the specific position on the current App where the advertisement to be played this time is displayed.
  • the above-mentioned advertisement slot ID is used to uniquely represent the specific position on the current App to display the advertisement to be played this time;
  • the above-mentioned requested advertisement types may include banner advertisements (banner), splash advertisements (splash) and native advertisements (native) and many other types, different ad types can be represented by different numbers.
  • the advertisement request may further include an advertisement space width (width) and an advertisement space height (height), wherein the advertisement space width and advertisement space height are generally smaller than the width and height of the screen of the terminal device.
  • the above advertisement request may also include device information of the terminal device, for example, the version number of the operating system in the terminal device (version), the device manufacturer (maker) to which the terminal device belongs, the device model (model) of the terminal device, the terminal device use The operating system language (language), the identification of the terminal device (oaid), the type of the terminal device (type), the version (version), the version number of the SDK, etc.
  • device information of the terminal device for example, the version number of the operating system in the terminal device (version), the device manufacturer (maker) to which the terminal device belongs, the device model (model) of the terminal device, the terminal device use The operating system language (language), the identification of the terminal device (oaid), the type of the terminal device (type), the version (version), the version number of the SDK, etc.
  • intersection of APPs saved by the advertising SDK module is:
  • the APP currently used by the user is "Huawei Wallet”.
  • the parameter code carried by the advertisement request may be as follows:
  • the advertisement request carries the APP intersection, instead of carrying the information of all the APPs actually installed on the terminal device (for example, the list of all APPs), on the one hand, the usage traffic of the user can be reduced and excessive waste can be avoided communication resources. On the other hand, the delay of the user's advertisement request will be reduced, thereby improving the user experience and the display rate of the advertisement.
  • the advertisement module on the advertisement server obtains a list of APPs installed by the user according to the advertisement request; and determines advertisements that meet the delivery conditions according to the list of APPs installed by the user and the targeting requirements of advertisements.
  • Targeting requirements include: serving ads to installed applications, and/or serving ads to applications that are not installed.
  • the determined list of APPs installed by the user is:
  • the advertising server determines that Taobao is not installed on the terminal device used by the user according to the APP list, so the user does not meet the advertising conditions for advertising A, and determines that advertising A is Ads that are not eligible to serve.
  • the advertising server determines that the JD APP has been installed on the terminal device used by the user according to the APP list. Therefore, the user meets the conditions for advertising B, and the advertisement B is determined as Ads eligible to serve.
  • the advertising server determines that the terminal device used by the user has already installed the Pinduoduo APP according to the APP list, so the user does not meet the advertising C conditions. It is determined that advertisement C is an advertisement that does not meet the delivery conditions.
  • the determined advertisement that meets the delivery conditions is only advertisement B.
  • the advertisement module on the advertisement server sends the advertisement with the application installation status orientation that meets the delivery condition to the terminal device.
  • the advertisements include advertisements that target the installation of an APP, and/or advertisements that target an APP that is not installed.
  • the advertisement module on the advertisement server sends response information to the advertisement SDK module on the terminal device, where the response information includes advertisement information of advertisement B.
  • the response information may include the return value (retcode) of the advertisement request and the advertisement slot ID (slotid).
  • Parameters such as the advertisement ID, the creative type of the advertisement (creative type), the interaction type of the advertisement (interaction type), the download link of the advertisement material, and the name of the APP package targeted by the advertisement.
  • the creative types of advertisements may include text advertisements, picture advertisements, graphic advertisements, and Image Interchange Format (GIF) advertisements.
  • the interaction types of advertisements may include no response after a user clicks, a relevant webpage is opened after a user clicks, an application is downloaded after a user clicks, and an application is entered after a user clicks.
  • the parameter code carried in the information that the advertisement module puts advertisement B (the ID of advertisement B is "2") to the advertisement SDK module may be as follows:
  • the terminal device may display the advertisement information to the user.
  • the interface displayed on the terminal device is as shown in Figure a in Figure 6.
  • the terminal device detects that the user An operation of , such as clicking on a specific news message, triggers the terminal device to send an advertisement request to the advertisement server.
  • the advertisement server sends, according to the list of APPs that the user has installed, to the terminal device, advertisements with application installation status targeting that meet the delivery conditions.
  • the ad is targeted to users who have installed the JD.com app.
  • the advertisement is a trousers advertisement on the Jingdong APP
  • the pop-up frame of the advertisement displayed on the terminal device may be as shown in a in FIG. 6 .
  • the user can click on the pop-up box, and the displayed interface can be as shown in Figure b in Figure 6, directly entering the details interface of the trousers information in the Jingdong APP, and the user can purchase or Add to your cart.
  • the user is using the player to play a video
  • the terminal device detects that the user has clicked the pause button when playing the video
  • the terminal device is triggered to send an advertisement request to the advertisement server
  • the advertisement server is based on the user's installation.
  • APP list, and send advertisements with application installation status targeting that meet the delivery conditions to terminal devices.
  • the advertisement is an advertisement of a Huawei mobile phone on a shopping APP.
  • the pop-up frame of the advertisement displayed on the terminal device may be as shown in a in FIG. 7 .
  • Users can click the pop-up box to directly enter the Huawei mobile phone details interface of the shopping APP.
  • the displayed interface can be as shown in Figure b in Figure 7. Users can make purchases or add themselves on this interface according to their needs. shopping cart.
  • the terminal device when the terminal device detects that the user enters a specified interface of an App, it may be considered that the terminal device needs to display advertisements at this time.
  • the terminal device after the terminal device detects that the user has opened the browser, it triggers the terminal device to send an advertisement request to the advertisement server, and the advertisement request carries a list of APPs installed by the terminal device.
  • the advertisement server sends, according to the list of APPs that the user has installed, to the terminal device, advertisements with application installation status targeting that meet the delivery conditions.
  • the advertisement is an advertisement of a Huawei mobile phone on a shopping APP.
  • the pop-up frame of the advertisement displayed on the terminal device may be as shown in a in FIG. 8 .
  • Users can click the pop-up box to directly enter the Huawei mobile phone details interface of the shopping APP.
  • the displayed interface can be as shown in Figure b in Figure 8. Users can purchase or add themselves on this interface according to their needs. shopping cart.
  • the terminal device when the terminal device detects that a user starts an App, it may be considered that the terminal device needs to display advertisements at this time.
  • the terminal device when the terminal device detects that the user clicks the icon of the browser application on the desktop, the terminal device is triggered to send an advertisement request to the advertisement server, and the advertisement request carries a list of APPs installed by the terminal device.
  • the advertisement server sends, according to the list of APPs that the user has installed, to the terminal device, advertisements with application installation status targeting that meet the delivery conditions.
  • the advertisement is targeted to an advertisement of a Huawei Mate series mobile phone on a shopping APP.
  • the pop-up frame of the advertisement displayed on the terminal device may be as shown in Figure b in Figure 9 shown, the creative is displayed to the user while the browser is loading. Users can click the pop-up box to directly enter the Huawei Mate series mobile phone details interface of the shopping APP, where users can make purchases or add to their shopping carts according to their needs.
  • the terminal device may also store the advertisement delivered by the advertisement server locally in advance.
  • the terminal device detects that the user clicks the icon of the browser application on the desktop, it triggers the terminal device to display the locally stored advertisement, and the displayed interface is, for example, as shown in figure b in FIG. 9 . Yes, users can click the pop-up box to directly enter the details interface of the Huawei Mate series mobile phone in the shopping APP.
  • the link included in the advertisement information sent by the advertisement server to the terminal device may be a link pointing to the A link to an interface inside the app.
  • the link pointed to by the advertisement pop-up window displayed on the interface of the terminal device is a link to a specific interface or a product detail page in the APP.
  • the advertisement server sends advertisements to the terminal device.
  • the link included in the information may be a link to the APP installation interface.
  • the link pointed to by the advertisement pop-up window displayed on the terminal device interface is the link of the APP installation interface. The user can click the advertisement pop-up window on the interface displayed by the terminal device to jump to the installation interface of the APP, and the user can determine whether to install the APP according to his own needs.
  • the advertising server determines, according to the APP list, that Taobao APP is not installed on the terminal device used by the user, so the user meets the requirements of advertisement A.
  • the delivery condition is determined, and the advertisement A is determined as the advertisement of the delivery condition.
  • the parameter code carried in the information that the advertisement service module puts advertisement A (the ID of advertisement A is "3") to the advertisement SDK module may be as follows:
  • the user can use "com.taobao.app.mall" to download and install the Taobao APP in the application market or browser.
  • the terminal device used by the user does not have the Taobao APP installed, and the user browses news on an APP on the terminal device.
  • the terminal device sends an advertisement request to the advertisement server.
  • the advertisement request may be that the terminal device detects an operation of the user (for example, clicking on a specific news information), which triggers the terminal device to send an advertisement request to the advertisement server, or it may be the process of the APP running, which automatically triggers the advertisement to the advertisement server.
  • the server sends an advertisement request, such as the advertisement type shown in Figure a in Figure 10 or Figure a in Figure 8 .
  • the advertisement server sends, according to the list of APPs that the user has installed, to the terminal device, advertisements with application installation status targeting that meet the delivery conditions.
  • the ad is targeted to users who do not have the Taobao app installed.
  • the advertisement is an advertisement of a knitted sweater on the Taobao APP
  • the pop-up frame of the advertisement displayed on the terminal device may be as shown in a in FIG. 10 .
  • the user can click on the pop-up box, and the displayed interface can be as shown in Figure b in Figure 10.
  • the displayed interface prompts the user whether to download the Taobao APP, and the user can determine whether to download the Taobao APP according to his own needs.
  • the terminal device used by the user browses news on the terminal device, and the interface displayed on the terminal device is as shown in Figure a in Figure 11.
  • the terminal device detects that the user An operation (such as clicking on a specific news information) triggers the terminal device to send an advertisement request to the ad server.
  • advertise is targeted to users who do not have the Taobao app installed.
  • the advertisement is an advertisement promoting Taobao APP, and the pop-up frame of the advertisement displayed on the terminal device may be as shown in a in FIG. 11 .
  • the user can click on the pop-up box, and the displayed interface may be as shown in Figure b in FIG.
  • the displayed interface includes the introduction of Taobao APP.
  • Users can determine whether to download the Taobao APP according to their own needs on this interface. If downloading, click "download now” to directly jump to the interface of downloading Taobao APP in the application market, as shown in c in Figure 11, the user can determine whether to install the Taobao APP according to his own needs.
  • the interfaces shown in FIG. 10 and FIG. 11 can also directly jump to the interface of picture c in FIG. 11, that is, the interface displayed by picture b in FIG. 11 may be optional, and the picture may not be displayed.
  • the interface shown in Figure b in Figure 10 may also be optional, that is, the interface shown in Figure b in Figure 10 may not be displayed.
  • the interface diagrams shown in FIG. 6 to FIG. 11 are only exemplary, and should not generate any limit.
  • the icons on the interface displayed by the terminal device may include more or less icons than those displayed on the interfaces shown in FIG. 6 to FIG. 11 , or combine certain icons, or split certain icons. some icons, or different icons, etc.
  • the embodiments of the present application are not limited herein.
  • the user periodically reports the APP installed on the terminal device.
  • the APP intersection is sent to the terminal device.
  • the terminal device carries the APP intersection when requesting an advertisement.
  • the advertisement server determines the advertisements that meet the targeting conditions for delivery. It is realized that no matter whether the advertisement request sent by the user carries the advertisement tracking identifier or not, the application installation status can be guaranteed to be accurate, thus ensuring the accuracy of the application installation status-oriented advertisement delivery, and also reducing the delay of the user's advertisement request. , so as to improve the display rate of the advertisement, improve the delivery efficiency of the application installation state-targeted advertisement, and improve the user experience.
  • FIG. 12 is a schematic flowchart of another example of a method 200 for obtaining an advertisement provided by the present application.
  • the method 200 includes: S210 to S291.
  • the advertisements targeted by the app install state that the advertiser needs to deliver in the ad server include:
  • Advertisement A Targeted at users who have installed Taobao APP.
  • Advertisement B Targeted at users who have installed the JD APP.
  • Advertisement C Targeted at users who do not have the Pinduoduo app installed.
  • the terminal device periodically sends a query request to the APP list service module on the advertisement server, where the query request includes a list of APPs that the user has installed on the terminal device.
  • the APP list service module on the advertisement server determines the intersection of APPs according to the installed APP list on the terminal device and the APP list stored in the APP list service module.
  • the APP list service module on the advertisement server performs short coding on the APPs included in the APP intersection.
  • the number of APPs included in the APP intersection may also be huge, that is, the length of the character string occupied by the APP intersection is very large, so the APP is carried in the advertisement request sent by the terminal device.
  • the intersection will affect the user's usage flow, and on the other hand, it will affect the delay of the user's advertisement request, thereby affecting the user's experience and the display rate of the advertisement. Therefore, in S221, short coding may be performed on the APP (APP package name) included in the APP intersection.
  • the APP list service module on the advertisement server may perform short encoding on the APPs stored in the APP list service module on the advertisement server, and the short encoding method includes any method that can reduce the length of the characters to be encoded. Encoding method, that is, the length of characters before encoding is greater than the length of characters after encoding.
  • the APPs (APP package names) stored in the APP list service module on the advertisement server include:
  • the APP list service module encodes these APPs by using short coding mode 1 (short coding mode 1 is an identifier of a certain short coding mode).
  • Table 2 shows the short coding of the APPs stored in the APP list service module in the advertisement server.
  • Table 2 The short-coding table of the application list stored in the APP list service module
  • the string length of the short-encoded value obtained after short-encoding the string of the application package name is significantly shorter than the length of the string of the original application package name.
  • the result of short encoding each application package name is represented by 5 characters.
  • encodedapps indicates the short-encoded value obtained by the short-edited APP.
  • Short encoding mode 1 can be expressed as: encodingmode:1;
  • encodingmode is used to indicate the short encoding mode.
  • the result after short encoding is only represented by uppercase letters, lowercase letters and numbers, that is, a to z, A to Z, and 0 to 9 are used to represent the short encoding result.
  • a to z, A to Z, and 0 to 9 have a total of 62 characters.
  • For each application package name start counting from 1, and assign a digital identification (identity, ID) to each application package name in increments.
  • the normal digital ID is in decimal. Then convert the digital ID to hexadecimal, then the length of the original character will be shortened a lot.
  • 3 characters can generate 623 IDs, which is 238328 IDs.
  • 4 characters can generate 624 IDs, or 14776336 IDs.
  • 5 characters can generate 625 IDs, which is 916132832 IDs.
  • the algorithm for short encoding and decoding and the character set will change.
  • the length of an application package name after encoding is 4 characters.
  • Table 3 is a table for short-coding the application list stored in the APP list service module with 82 different characters.
  • Table 3 The table for short encoding of the application list stored in the APP list service module
  • the string length of the short-encoded value obtained after short-encoding the string of the application package name is significantly shortened compared with the length of the string of the original application package name.
  • the result of short encoding of each application package name is represented by 4 characters.
  • encodedapps indicates the short encoded value obtained by the short-edited APP
  • Short encoding mode 2 can be expressed as: encodingmode:2;
  • encodingmode is used to indicate the short encoding mode.
  • the currently used short encoding method is not the shortest, other short encoding methods can also be used, but no matter which short encoding method is adopted, an ID needs to be used to indicate the used short encoding method.
  • the encoding mode that is, the "encodingmode" field is required. In this way, when decoding, it knows how to do reverse decoding.
  • the APP list service module on the advertisement server sends the short-coded APP intersection and the short-coded method to the terminal device.
  • the codes of the APP intersection after short encoding and the short encoding method can be as follows:
  • the terminal device receives and saves the short-coded APP intersection and the short-coded mode.
  • the short-encoded APP intersection and short-encoding method stored by the terminal device are:
  • S250 The terminal device receives an operation of the user, where the operation is used to trigger sending an advertisement request.
  • the terminal device sends an advertisement request to the advertisement module on the advertisement server, where the advertisement request includes the short-encoded APP intersection and the short-encoding method.
  • the terminal device may send the above advertisement request to the advertisement module in the advertisement server based on network protocols such as HTTP, secure HTTP channel (HTTPS), file transfer protocol (FTP) or secure file transfer protocol (SFTP).
  • HTTP secure HTTP channel
  • FTP file transfer protocol
  • SFTP secure file transfer protocol
  • the advertisement request includes the short-encoded APP intersection and the short-encoding method.
  • the short-encoded APP intersection and short-encoding method stored in the advertising SDK module are:
  • the parameter code carried in the advertisement request may be as follows:
  • the advertisement module on the advertisement server obtains a list of APPs installed by the user according to the short-coded APP intersection and the short-coded method.
  • the advertisement module on the advertisement server first determines the corresponding decoding method according to the identifier of the short encoding method, then decodes the intersection of the APPs after the short encoding according to the decoding method, and finally determines the list of APPs installed by the user.
  • the advertisement module on the advertisement server first determines, according to the identifier of the short encoding mode "encodingmode: 2", that the identifier of the decoding mode used should also be “2”. Then decode ["d5@b”, "e0%h”], and finally determine the list of APP package names that the user has installed:
  • the advertisement module on the advertisement server determines advertisements that meet the delivery conditions according to the list of APPs that the user has installed and the targeting requirements of advertisements.
  • Targeting requirements include: serving ads to installed applications, and/or serving ads to applications that are not installed.
  • the advertisement module on the advertisement server sends the advertisement with application installation status orientation that meets the delivery conditions to the advertisement SDK module on the terminal device.
  • the advertisements include advertisements that target the installation of an APP, and/or advertisements that target an APP that is not installed.
  • the advertisement module on the advertisement server sends or delivers advertisement B to the advertisement SDK module on the terminal device.
  • the user who has installed the JD APP For the advertiser's targeting requirement for advertisement B, the user who has installed the JD APP, according to the APP list, it is judged that the JD APP has been installed on the terminal device used by the user, so the user meets the advertisement B's delivery conditions, and the advertisement B is determined to be eligible for delivery. conditional advertising.
  • the parameter code carried in the information that the advertisement module puts advertisement B (the ID of advertisement B is "2") to the advertisement SDK module can be as follows:
  • the advertisement server determines, according to the APP list, that the terminal device used by the user has not installed the Taobao APP. Taobao APP, so the user meets the advertisement A's delivery conditions, and determines that the advertisement A is the advertisement with the delivery conditions.
  • the parameter code carried in the information that the advertisement service module puts advertisement A (the ID of advertisement A is "3") to the advertisement SDK module may be as follows:
  • the terminal device may display the advertisement information to the user.
  • the terminal device After receiving the advertisement information, the terminal device can use "com.taobao.app.mall" to download and install the Taobao APP in the application market or browser.
  • the user periodically reports the APP installed on the terminal device. Perform short encoding on the intersection, and send the result and the short encoding method of the APP intersection to the terminal device.
  • the terminal device carries the short-encoded result and short-encoding method when requesting an advertisement.
  • the advertisement server determines the APP that the user has installed according to the short-encoded result and the short-encoding method, and determines the APP installation status targeting condition of each advertisement. Ads that meet the targeting conditions are delivered, thus ensuring the accuracy of the application installation state-targeted advertising delivery. Further, excessive consumption of user traffic is avoided, and the delay of advertisement requests is reduced, thereby improving the display rate of advertisements and the delivery efficiency of advertisements with application installation status orientation, and improving user experience.
  • FIG. 13 is a schematic flowchart of another example of a method 300 for obtaining an advertisement provided by the present application.
  • the method 300 includes: S310 to S350.
  • S310 The terminal device receives an operation of the user, where the operation is used to trigger sending an advertisement request.
  • the terminal device sends the advertisement request to the advertisement service module on the advertisement server, where the advertisement request includes: a list of APPs that the user has installed on the terminal device.
  • the advertisement service module on the advertisement server obtains a list of APPs installed by the user according to the advertisement request; and determines advertisements that meet the delivery conditions according to the list of APPs installed by the user and the targeting requirements of advertisements.
  • Targeting requirements include: serving ads to installed applications, and/or serving ads to applications that are not installed.
  • the advertisement service module on the advertisement server sends an advertisement with application installation status orientation that meets the delivery conditions to the advertisement SDK module on the terminal device.
  • the advertisements include advertisements that target the installation of an APP, and/or advertisements that target an APP that is not installed.
  • the terminal device may display the advertisement information to the user.
  • the user reports the APP installed on the terminal device, and the advertisement server determines the advertisements that meet the targeting conditions according to the APP installed by the user and the directional conditions of the APP installation status of the advertisement to be placed, thereby ensuring the delivery of advertisements that meet the targeting conditions.
  • the accuracy of application installation status-targeted advertisement delivery improves the delivery efficiency of application installation status-targeted advertisements and improves user experience.
  • FIG. 14 is a schematic flowchart of another example of a method 400 for obtaining advertisements provided by the present application.
  • the method 400 includes: S409 to S460.
  • the advertisement SDK module on the terminal device performs short encoding on the APP installed on the terminal device.
  • the terminal device may be installed on the terminal device every time it is powered on, or every time it detects that a new APP is downloaded and installed, or periodically (for example, every other day or two days, etc.).
  • the installed APP is short-coded.
  • the embodiments of the present application are not limited herein.
  • S410 The terminal device receives an operation of the user, where the operation is used to trigger sending an advertisement request.
  • the terminal device sends an advertisement request to the advertisement service module on the advertisement server on the advertisement server, where the advertisement request includes: the APP installed after short encoding and the short encoding method.
  • the advertisement module on the advertisement server obtains a list of APPs installed by the user according to the APPs installed after the short coding and the short coding method.
  • the advertisement service module on the advertisement server first determines the corresponding decoding mode according to the identification of the short encoding mode, then decodes the result after the short encoding according to the decoding mode, and finally determines the user has installed the APP list.
  • the advertisement module on the advertisement server determines advertisements that meet the delivery conditions according to the list of APPs that the user has installed and the targeting requirements of advertisements.
  • Targeting requirements include: serving ads to installed applications, and/or serving ads to applications that are not installed.
  • the advertisement service module on the advertisement server sends the advertisement with the application installation status orientation that meets the delivery conditions to the advertisement SDK module on the terminal device.
  • the advertisements include advertisements that target the installation of an APP, and/or advertisements that target an APP that is not installed.
  • the terminal device may display the advertisement information to the user.
  • the advertisement server may also negotiate with the terminal device to determine the short encoding method and the identifier of the short encoding method, so that the terminal device and the advertisement server have the same understanding of the short encoding method and the identifier of the short encoding method. , so that the advertisement server can decode correctly in S430.
  • the method for obtaining an advertisement provided by the present application performs short encoding on an APP installed on a terminal device, and the terminal device carries the short-encoded result and the short-encoding method when requesting an advertisement.
  • the advertisement server determines the list of APPs installed by the user according to the short-encoded result and the short-encoded method. According to the APP installation state targeting conditions of each advertisement, the advertisements that meet the targeting conditions are determined for delivery. It is realized that no matter whether the advertisement request sent by the user carries the advertisement tracking identifier or not, the application installation status can be guaranteed to be accurate, thus ensuring the accuracy of the application installation status-oriented advertisement delivery, and also reducing the delay of the user's advertisement request. , so as to improve the display rate of the advertisement, improve the delivery efficiency of the application installation state-targeted advertisement, and improve the user experience.
  • parameter codes in the above embodiments are merely exemplary, and no limitation should be imposed on the parameter code formats carried by the information in the embodiments of the present application.
  • the parameter code format carried by the information in the embodiments of the present application may also be other formats.
  • the embodiments of the present application are not limited herein.
  • predefinition may be implemented by pre-saving corresponding codes, forms or other means that can be used to indicate relevant information in the device (the application does not limit its specific implementation means) .
  • Embodiments of the advertisement acquisition method provided by the embodiments of the present application are described above with reference to FIG. 1 to FIG. 14 , and the related devices provided by the embodiments of the present application are described below.
  • each device including the foregoing terminal device and advertisement server
  • each function may be divided into various function modules, or two or more functions may be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware. It should be noted that, the division of modules in this embodiment is schematic, and is only a logical function division, and there may be other division manners in actual implementation.
  • the communication device (the above-mentioned terminal device or advertisement server) provided by the embodiment of the present application is used to execute the above-mentioned method for obtaining advertisements, and thus can achieve the same effect as the above-mentioned implementation method.
  • the communication device may include a processing module, a storage module and a communication module.
  • the processing module may be used to control and manage the actions of the communication device. For example, it may be used to support the communication apparatus to perform the steps performed by the processing unit.
  • the memory module can be used to support the storage of program codes and data, etc.
  • the communication module can be used to support the communication between the communication device and other devices.
  • the processing module may be a processor or a controller. It may implement or execute the various exemplary logical blocks, modules and circuits described in connection with this disclosure.
  • the processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of digital signal processing (DSP) and a microprocessor, and the like.
  • the storage module may be a memory.
  • the communication module may specifically be a device that interacts with other electronic devices, such as a radio frequency circuit, a Bluetooth chip, and a Wi-Fi chip.
  • FIG. 15 shows a schematic diagram of the hardware structure of an example of a communication apparatus 500 provided by the present application, and the communication apparatus 500 may be the above-mentioned terminal device or advertisement server.
  • the communication device 500 may include a processor 510 , an external memory interface 520 , an internal memory 521 , a universal serial bus (USB) interface 530 , a charge management module 540 , a power management module 541 , and a battery 542 , Antenna 1, Antenna 2, wireless communication module 550, etc.
  • USB universal serial bus
  • the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the communication apparatus 500 .
  • the communication apparatus 500 may include more or less components than shown, or combine some components, or separate some components, or arrange different components.
  • the illustrated components may be implemented in hardware, software, or a combination of software and hardware.
  • the communication apparatus 500 when the communication apparatus 500 is a terminal device, the communication apparatus may further include a display screen.
  • Processor 510 may include one or more processing units.
  • the processor 510 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video Codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (neural-network processing unit, NPU), etc.
  • AP application processor
  • GPU graphics processing unit
  • ISP image signal processor
  • controller a video Codec
  • digital signal processor digital signal processor
  • DSP digital signal processor
  • baseband processor baseband processor
  • neural-network processing unit neural-network processing unit
  • NPU neural-network processing unit
  • different processing units may be independent components, or may be integrated in one or more processors.
  • the communication device 500 may also include one or more processors 510.
  • the controller can generate an operation control signal according to the instruction operation code and the timing signal, and complete the control of fetching and executing instructions.
  • the processor 510 may include one or more interfaces.
  • the interface may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous receiver (universal asynchronous receiver) /transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, SIM card interface, and/or USB interface, etc.
  • the USB interface 530 is an interface that conforms to the USB standard specification, and can specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, and the like.
  • the USB interface 2530 can be used to connect a charger to charge the communication device 500, and can also be used to transmit data between the communication device 500 and peripheral devices.
  • the interface connection relationship between the modules illustrated in the embodiments of the present application is only a schematic illustration, and does not constitute a structural limitation of the communication apparatus 500 .
  • the communication apparatus 500 may also adopt different interface connection manners in the foregoing embodiments, or a combination of multiple interface connection manners.
  • the wireless communication function of the communication device 500 may be implemented by the antenna 1, the antenna 2, the wireless communication module 550, and the like.
  • the wireless communication module 550 can provide Wi-Fi (including Wi-Fi perception and Wi-Fi AP), Bluetooth (Bluetooth, BT), and wireless data transmission modules (eg, 433MHz, 868MHz, 515MHz) applied on the communication device 500 and other wireless communication solutions.
  • the wireless communication module 550 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 550 receives electromagnetic waves via the antenna 1 or the antenna 2 (or, the antenna 1 and the antenna 2 ), filters and frequency modulates the electromagnetic wave signals, and sends the processed signals to the processor 510 .
  • the wireless communication module 550 can also receive the signal to be sent from the processor 510, perform frequency modulation on it, amplify it, and then convert it into electromagnetic waves and radiate it out through the antenna 1 or the antenna 2.
  • the external memory interface 520 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the communication device 500.
  • the external memory card communicates with the processor 510 through the external memory interface 520 to realize the data storage function. For example to save files like music, video etc in external memory card.
  • Internal memory 521 may be used to store one or more computer programs including instructions.
  • the processor 510 may execute the above-mentioned instructions stored in the internal memory 521, thereby causing the communication device 500 to execute the advertisement acquisition method, various applications and data processing provided in some embodiments of the present application.
  • the internal memory 521 may include a code storage area and a data storage area. Among them, the code storage area can store the operating system.
  • the data storage area may store data and the like created during use of the communication device 500 .
  • the internal memory 521 may include high-speed random access memory, and may also include non-volatile memory, such as one or more disk storage components, flash memory components, universal flash storage (UFS), and the like.
  • the processor 510 may cause the communication device 500 to execute the instructions provided in the embodiments of the present application by executing the instructions stored in the internal memory 521 and/or the instructions stored in the memory provided in the processor 510 Ad acquisition methods, and other applications and data processing.
  • FIG. 16 shows a schematic block diagram of another example of a communication apparatus 600 provided by an embodiment of the present application.
  • the communication apparatus 600 may correspond to the terminal device or advertisement server described in each of the embodiments in the foregoing method 100 to method 400 . It can also be a chip or component applied to a terminal device or an advertisement server, and each module or unit in the communication apparatus 600 is respectively used to execute the terminal device or the advertisement server described in the various embodiments of the above method 100 to 400.
  • the communication apparatus 600 may include: a processing unit 610 and a communication unit 620 .
  • the communication apparatus 600 may further include a storage unit 630 .
  • the communication unit 620 may include a receiving unit (module) and a sending unit (module), configured to perform the steps of receiving information and sending information by the terminal device or advertisement server in the foregoing method embodiments.
  • the storage unit 1300 is used to store the instructions executed by the processing unit 610 and the communication unit 620 .
  • the processing unit 610, the communication unit 620 and the storage unit 630 are connected in communication, the storage unit 630 stores instructions, the processing unit 610 is used to execute the instructions stored in the storage unit, and the communication unit 620 is used to perform specific signal sending and receiving under the driving of the processing unit 610.
  • the communication unit 620 may be a transceiver, an input/output interface or an interface circuit, etc., for example, may be implemented by the wireless communication module 550 in the embodiment shown in FIG. 15 .
  • the storage unit may be a memory, for example, may be implemented by the external memory interface 520 and the internal memory 521 in the embodiment shown in FIG. 15 .
  • the processing unit 610 may be implemented by the processor 510 in the embodiment shown in FIG. 15 , or may be implemented by the processor 510 , the external memory interface 520 , and the internal memory 521 .
  • the communication apparatus 600 shown in FIG. 16 may be a terminal device or an advertisement server, or the terminal device or the advertisement server may include the communication apparatus 600 shown in FIG. 16 .
  • each unit in the above apparatus can be realized in the form of software calling through the processing element; also can all be realized in the form of hardware; some units can also be realized in the form of software calling through the processing element, and some units can be realized in the form of hardware.
  • each unit can be a separately established processing element, or can be integrated in a certain chip of the device to be implemented, and can also be stored in the memory in the form of a program, which can be called by a certain processing element of the device and execute the unit's processing. Function.
  • the processing element may also be called a processor, which may be an integrated circuit with signal processing capability.
  • each step of the above method or each of the above units may be implemented by an integrated logic circuit of hardware in the processor element or implemented in the form of software being invoked by the processing element.
  • a unit in any of the above apparatuses may be one or more integrated circuits configured to implement the above methods, eg, one or more application specific integrated circuits (ASICs), or, one or more A plurality of digital signal processors (DSPs), or, one or more field programmable gate arrays (FPGAs), or a combination of at least two of these integrated circuit forms.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • FPGAs field programmable gate arrays
  • the processing element can be a general-purpose processor, such as a central processing unit (central processing unit, CPU) or other processors that can invoke programs.
  • CPU central processing unit
  • these units can be integrated together and implemented in the form of a system-on-a-chip (SOC).
  • the embodiment of the present application further provides an advertisement system, the system includes: the terminal device and the advertisement server provided in the foregoing method embodiment, optionally, the system may further include: the second central device provided in the foregoing method embodiment , at least one of a third electronic device and a fourth electronic device.
  • Embodiments of the present application further provide a computer-readable storage medium for storing computer program codes, where the computer program includes instructions for executing any of the methods for obtaining advertisements provided by the above embodiments of the present application.
  • the readable medium may be a read-only memory (read-only memory, ROM) or a random access memory (random access memory, RAM), which is not limited in this embodiment of the present application.
  • the present application also provides a computer program product, the computer program product includes instructions, when the instructions are executed, so that the terminal device and the advertisement server perform corresponding operations corresponding to the above methods.
  • An embodiment of the present application further provides a chip located in a communication device, the chip includes: a processing unit and a communication unit, the processing unit may be, for example, a processor, and the communication unit may be, for example, an input/output interface, a pin or a circuit, etc.
  • the processing unit can execute computer instructions, so that the communication device executes any of the advertisement acquisition methods provided by the foregoing embodiments of the present application.
  • the computer instructions are stored in a storage unit.
  • the storage unit is a storage unit in the chip, such as a register, a cache, etc.
  • the storage unit can also be a storage unit in the terminal located outside the chip, such as ROM or other storage units that can store static information and instructions. Types of static storage devices, random RAM, etc.
  • the processor mentioned in any one of the above may be a CPU, a microprocessor, an ASIC, or one or more integrated circuits for controlling the program execution of the above-mentioned transmission method of feedback information.
  • the processing unit and the storage unit can be decoupled, respectively disposed on different physical devices, and connected in a wired or wireless manner to implement the respective functions of the processing unit and the storage unit, so as to support the system chip to implement the above embodiments various functions in .
  • the processing unit and the memory may also be coupled on the same device.
  • the communication device, computer-readable storage medium, computer program product or chip provided in this embodiment are all used to execute the corresponding method provided above. Therefore, for the beneficial effects that can be achieved, reference may be made to the above-provided method. The beneficial effects in the corresponding method will not be repeated here.
  • the memory in this embodiment of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory may be ROM, programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), electrically erasable programmable read-only memory (electrically EPROM) , EEPROM) or flash memory.
  • Volatile memory can be RAM, which acts as an external cache.
  • RAM random access memory
  • DRAM dynamic random access memory
  • SDRAM synchronous dynamic random access memory
  • double data rate Synchronous dynamic random access memory double data rate SDRAM, DDR SDRAM
  • enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM
  • synchronous link dynamic random access memory direct memory bus random access memory Access memory
  • direct rambus RAM direct rambus RAM
  • the methods in the embodiments of the present application may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • software When implemented in software, it can be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer programs or instructions.
  • the computer may be a general purpose computer, special purpose computer, computer network, or other programmable device.
  • the computer program or instructions may be stored in or transmitted over a computer-readable storage medium.
  • the computer-readable storage medium can be any available media that can be accessed by a computer or a data storage device such as a server that integrates one or more available media.
  • the disclosed system, apparatus and method may be implemented in other manners.
  • the apparatus embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not implemented.
  • the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
  • 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 functions, if implemented in the form of software functional units and sold or used as independent products, may be stored in a computer-readable storage medium.
  • the technical solution of the present application can be embodied in the form of a software product in essence, or the part that contributes to the prior art or the part of the technical solution, and the computer software product is stored in a readable storage medium , including several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned readable storage medium includes: U disk, removable hard disk, ROM, RAM, magnetic disk or optical disk and other media that can store program codes.

Abstract

本申请提供了一种广告获取的方法及其相关设备,该方法包括:终端设备向广告服务器发送广告请求,广告请求包括:终端设备已经安装的APP中的一部分或者全部APP的信息,终端设备接收广告服务器发送的广告信息,广告信息包括第一广告信息和/或第二广告信息,第一广告的信息与终端设备已安装第一APP相关联,第二广告信息指示该终端设备安装第二APP。本申请的提供的方法,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP列表,按照需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。保证了应用安装状态定向的准确性,提高应用安装状态定向的广告的投放效率。

Description

广告获取的方法及其相关设备
本申请要求于2021年4月30日提交国家知识产权局、申请号为202110541452.0、申请名称为“广告获取的方法及其相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,更为具体的,涉及一种广告获取的方法及其相关设备。
背景技术
目前,为了进一步的提升各种应用程序(application,APP)在市场中的普及率以及利用率,APP的维护方会向用户推送关于该APP的广告。
对于某一个APP而言,该APP在用户使用的终端设备上存在两种应用安装状态:一种是已安装状态,另一种是未安装状态。广告主在广告投放过程中,存在广告投放不准确的问题;例如,有的广告是希望用户通过该广告下载APP的,需要投放给未安装该APP的用户以提高该APP的普及率,但是却投放给了已安装该APP的用户。有的广告是需要投放给已经安装该APP的用户以提高该APP的利用率,但是却投放给了未安装该APP用户,在这种情况下,会降低广告的投放效率。
发明内容
本申请提供了一种广告获取的方法及其相关设备,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP列表,按照每个需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。保证了应用安装状态定向准确,提高应用安装状态定向的广告的投放效率。
第一方面,提供了一种广告获取的方法,该方法包括:终端设备向广告服务器发送广告请求,该广告请求包括应用程序(APP)集合的信息,该应用程序集合包括该终端设备已经安装的应用程序中的一部分或者全部;该终端设备接收该广告服务器发送的响应于该广告请求的广告信息,该广告信息包括第一广告信息和/或第二广告信息,其中,该第一广告的信息与第一应用程序相关联,该应用程序集合包括该第一应用程序,该第二广告信息指示该终端设备安装第二应用程序,该应用程序集合不包括该第二应用程序。
第一方面提供的方法,通过终端设备上报终端设备上安装的APP列表,广告服务器根据终端设备上安装的APP列表,按照每个需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。实现了无论用户发送的广告请求中是否携带广告跟踪标识,均可以保证应用安装状态定向准确,从而保证了应用安装状态定向的广告投放的准确性,提高应用安装状态定向的广告的投放效率。
示例性的,应用安装状态定向是指:某个APP是已经安装状态,或者,该APP 是未安装状态。即应用安装状态定向可以理解为某个APP在终端设备上确定的安装状态。对于一个APP而言,该APP安装状态定向为:该APP是已经安装状态,或者,该APP是未安装状态。
应用安装状态定向的广告是指:某一个广告设置的(或者对应的)应用安装状态定向。换句话说,应用安装状态定向的广告可以理解该广告需要投放到已经安装某个或者某些特定的APP的用户,或者,该广告需要投放到未安装某个或者某些特定的APP的用户。
在第一方面一种可能的实现方式中,该应用程序集合的信息包括:应用程序的包名。
示例性的,京东APP包名为:com.jingdong.app.mall。
在第一方面一种可能的实现方式中,该应用程序集合的信息包括:应用程序的包名分别对应的短编码结果以及短编码方式的标识。在该实现方式中,由于终端设备发送的广告请求中只携带应用程序的包名分别对应的短编码结果以及短编码方式的标识,不用携带数量巨大的应用包名,避免了过量的消耗用户流量,降低了广告请求的时延,从而提高了广告的展示率以及具有应用安装状态定向的广告的投放效率,提高用户体验。
示例性的,短编码的方式包括可以降低需要编码的字符的长度的所有编码方式,即编码前的字符长度大于编码后的字符长度。
在第一方面一种可能的实现方式中,在该终端设备向广告服务器发送广告请求之前,该方法还包括:该终端设备向该广告服务器发送查询请求,该查询请求包括该终端设备已经安装的应用程序;该终端设备接收该广告服务器发送的查询响应信息,该查询响应信息包括:该应用程序集合的信息。在该实现方式中,可以节省广告服务器的存储资源,保障广告服务器可以正常工作,保证了广告服务器的工作效率。
示例性的,该应用程序集合为该终端设备已经安装的应用程序与该广告服务器存储的应用程序的交集,该广告服务器存储的应用程序与该广告服务器需要投放的广告关联。在该实现方式中,通过用户周期性的上报终端设备上安装的APP,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP列表,获取两者的APP交集,并将该APP交集发送给终端设备。保证了应用安装状态定向准确,从而保证了应用安装状态定向的广告投放的准确性,并且,还会降低用户的广告请求的时延,从而提高广告的展示率提高应用安装状态定向的广告的投放效率。
示例性的,终端设备可以在每次开机后,或者每次检测到有新的APP下载安装后,或者周期性的(例如,每隔一天或者两天等)向APP列表服务模块发送查询请求。或者,终端设备还可以根据终端设备设备目前的网络状态(例如连接的网络类型(WiFi/局域网/蜂窝网络)、网速等),确定发送该查询请求的时机。
在第一方面一种可能的实现方式中,该第一广告信息包括:第一广告素材的下载地址、该第一应用程序的包名以及第一页面的地址链接,第一页面为该第一应用程序的页面;和/或,该第二广告信息包括:第二广告素材的下载地址以及该第二应用程序的包名。
在第一方面一种可能的实现方式中,该方法还包括:该终端设备显示第一界面,该 第一界面包括该第一广告的广告素材;该终端设备检测作用于该第一广告的第一操作;当检测到该第一操作时,该终端设备在第一应用程序中显示该第一页面。
在第一方面一种可能的实现方式中,该方法还包括:该终端设备显示第二界面,该第二界面包括该第二广告素材;该终端设备检测作用于该第二广告的第二操作;当检测到该第二操作时,该终端设备显示第二应用程序的下载页面。
在第一方面一种可能的实现方式中,在该终端设备向广告服务器发送广告请求之前,该方法还包括:该终端设备接收用户的第三操作,该第三操作用于触发该终端设备发送该广告请求,该第三操作包括:用于打开应用程序的操作、或者点击应用程序中的链接操作。
示例性的,该第三操作可以包括:用户在终端设备上打开某一个APP(例如华为视频APP),或者,进入某个APP指定的界面,或者,用户在终端设备上打开某一个视频类的APP后,点击显示的某一个视频,或者,在视频播放的过程中,检测到用户的暂停操作,便触发发送广告请求。或者,用户在终端设备上打开某一个APP(例如为购物类的APP),或者,用户点击某一个APP(例如为购物类的APP)里面的某一个链接,打开一个商品界面等,终端设备上的APP检测到了这些操作中的任意一个,触发终端设备生成广告请求,并发送广告请求。
示例性的,该广告请求也可以是终端设备上的APP在运行过程中自动触发的。用户只需要打开某一个APP,该APP在运行的过程中可以自动的触发发送广告请求。
第二方面,提供了一种广告获取的方法,该方法应用于广告系统中,该系统包括终端设备和广告服务器,该方法包括:该终端设备向该广告服务器发送广告请求,该广告请求包括应用程序集合的信息,该应用程序集合包括该终端设备已经安装的应用程序中的一部分或者全部;该广告服务器根据广告请求以及有应用安装定向的广告,确定符合投放条件的广告,该有应用安装定向的广告包括:定向于已经安装的应用程序的广告,和/或,定向于未安装的应用程序的广告;该广告服务器向该终端设备发送响应于该广告请求的广告信息,该广告信息包括第一广告信息和/或第二广告信息,其中,该第一广告的信息与第一应用程序相关联,该应用程序集合包括该第一应用程序,该第二广告信息指示该终端设备安装第二应用程序,该应用程序集合不包括该第二应用程序。
第二方面提供的方法,通过终端设备上报已经安装的APP,广告服务器根据终端设备上安装的APP,按照每个需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。实现了无论用户发送的广告请求中是否携带广告跟踪标识,均可以保证应用安装状态定向准确,从而保证了应用安装状态定向的广告投放的准确性,提高应用安装状态定向的广告的投放效率。
在第二方面一种可能的实现方式中,该应用程序集合的信息包括:应用程序的包名。
在第二方面一种可能的实现方式中,该应用程序集合的信息包括:应用程序的包名分别对应的短编码结果以及短编码方式的标识。
在第二方面一种可能的实现方式中,在该终端设备向该广告服务器发送广告请求之前,该方法还包括:该终端设备向该广告服务器发送查询请求,该查询请求包括该 终端设备已经安装的应用程序。该广告服务器根据终端设备已经安装的应用程序和该广告服务器存储的应用程序,确定该应用程序集合,该广告服务器根据应用程序集合,获取该应用程序集合的信息;该广告服务器向该终端设备发送该应用程序集合的信息。在该实现方式中,广告服务器上的APP列表服务模块会将该APP集合发送给用户使用的终端设备,这样可以节省广告服务器的存储资源,保障广告服务器可以正常工作,保证了广告服务器的工作效率。
在第二方面一种可能的实现方式中,该应用程序集合为该终端设备已经安装的应用程序与该广告服务器存储的应用程序的交集,该广告服务器存储的应用程序与该广告服务器需要投放的广告关联。在该实现方式中,通过用户周期性的上报使用的终端设备上安装的APP,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP列表,获取两者的APP交集。终端设备请求广告时携带该APP交集,广告服务器根据APP交集,按照每个需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。从而保证了应用安装状态定向的广告投放的准确性,提高应用安装状态定向的广告的投放效率。
在第二方面一种可能的实现方式中,在该应用程序集合的信息包括应用程序的包名分别对应的短编码结果以及短编码方式的标识的情况下,该广告服务器根据应用程序集合,获取该应用程序集合的信息,包括:该广告服务器根据应用程序集合,利用短编码方式对该应用程序集合包括的应用程序的包名分别进行短编码,得到应用程序的包名分别对应的短编码结果;该广告服务器根据应用程序的包名分别对应的短编码结果以及该短编码方式,获取该应用程序集合的信息。
示例性的,短编码的方式包括可以降低需要编码的字符的长度的所有编码方式,即编码前的字符长度大于编码后的字符长度。
在第二方面一种可能的实现方式中,在该广告服务器确定符合投放条件的广告之前,该方法还包括:该广告服务器根据短编码方式的标识,确定对应的解码方式;该广告服务根据解码方式,对该应用程序的包名分别对应的短编码结果进行解码,得到该应用程序集合。
在第二方面一种可能的实现方式中,该第一广告信息包括:广告素材的下载地址、该第一应用程序的包名以及第一页面的地址链接,该第一页面为该第一应用程序的页面;和/或,该第二广告信息包括:第二广告素材的下载地址以及该第二应用程序的包名。
在第二方面一种可能的实现方式中,该方法还包括:该终端设备显示第一界面,该第一界面包括该第一广告的广告素材;该终端设备检测作用于该第一广告的第一操作;当检测到该第一操作时,该终端设备在第一应用程序中显示该第一页面。
在第二方面一种可能的实现方式中,该方法还包括:该终端设备显示第二界面,该第二界面包括该第二广告;该终端设备检测作用于该第二广告的第二操作;当检测到该第二操作时,该终端设备显示第二应用程序的下载页面。
在第二方面一种可能的实现方式中,在该终端设备向广告服务器发送广告请求之前,该方法还包括:该终端设备接收用户的第三操作,该第三操作用于触发该终端设备发送该广告请求,该第三操作包括:用于打开应用程序的操作、或者点击应用程序中的 链接操作。
第三方面,提供了一种通信装置,该通信装置包括用于执行以上第一方面或者第一方面的任意一方面可能的实现方式中的各个步骤的单元。
第四方面,提供了一种通信装置,该通信装置包括至少一个处理器和存储器,该处理器和存储器耦合,该存储器存储有程序指令,当该存储器存储的程序指令被该处理器执行时执行以上第一方面或者第一方面的任意一方面可能的实现方式中的方法。
第五方面,提供了一种通信装置,该通信装置包括至少一个处理器和接口电路,至少一个处理器用于执行以上第一方面或者第一方面中的任意一方面可能的实现方式中的方法。
第六方面,提供了一种终端设备,该终端设备包括上述第三方面、第四方面或者第五方面提供的任一种通信装置。
第七方面,提供了一种通信装置,该通信装置包括至少一个处理器和存储器,该处理器和存储器耦合,该存储器存储有程序指令,当该存储器存储的程序指令被该处理器执行时执行以上第二方面或者第二方面的任意一方面可能的实现方式中由广告服务器执行的方法。
第八方面,提供了一种通信装置,该通信装置包括用于执行以上第二方面或者第二方面的任意一方面可能的实现方式中由广告服务器执行的各个步骤的单元。
第九方面,提供了一种通信装置,该通信装置包括至少一个处理器和接口电路,至少一个处理器用于执行以上第二方面或者第二方面的任意一方面可能的实现方式中由广告服务器执行的方法。
第十方面,提供了一种广告服务器,该广告服务器包括上述第七方面、第八方面或者第九方面提供的任一种通信装置。
第十一方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序在被处理器执行时,用于执行第一方面或者第一方面中的任意可能的实现方式中的方法,或者用于执行第二方面或者第二方面中的任意可能的实现方式中的方法。
第十二方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序被执行时,用于执行第一方面或者第一方面中的任意可能的实现方式中的方法,或者,用于执行第二方面或者第二方面中的任意可能的实现方式中的方法。
第十三方面,提供了一种芯片,该芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有该芯片的通信设备执行第一方面或者第一方面中的任意可能的实现方式中的方法,或者执行第二方面或者第二方面中的任意可能的实现方式中的方法。
本申请提供的本申请提供的广告获取的方法及相关设备,通过用户周期性的上报终端设备上安装的APP,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP列表,获取两者的APP交集,并将该APP交集发送给终端设备。终端设备请求广告时携带该APP交集,广告服务器根据APP交集,按照每个需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。实现了无论用户发送 的广告请求中是否携带广告跟踪标识,均可以保证应用安装状态定向准确,从而保证了应用安装状态定向的广告投放的准确性,并且,还会降低用户的广告请求的时延,从而提高广告的展示率提高应用安装状态定向的广告的投放效率,提高用户体验。
附图说明
图1是一例适用于本申请实施例的通信系统架构的示意图。
图2是另一例适用于本申请实施例的通信系统架构的示意图。
图3是一例在分层架构的安卓(Android)操作系统中终端设备向广告服务器请求广告时的软件交互示意图。
图4是本申请提供的一例广告主在广告平台上创建应用安装状态定向的广告的示意性界面图。
图5是本申请提供的一例广告获取的方法的示意性流程图。
图6是本申请提供的一例终端设备显示定向于已经安装的APP的广告的示意性界面图。
图7是本申请提供的另一例终端设备显示定向于已经安装的APP的广告的示意性界面图。
图8是本申请提供的另一例终端设备显示定向于已经安装的APP的广告的示意性界面图。
图9是本申请提供的又一例终端设备显示定向于已经安装的APP的广告的示意性界面图。
图10是本申请提供的一例终端设备显示定向于未安装的APP的广告的示意性界面图。
图11是本申请提供的另一例终端设备显示定向于未安装的APP的广告的示意性界面图。
图12是本申请提供的另一例广告获取的方法的示意性流程图。
图13是本申请提供的又一例广告获取的方法的示意性流程图。
图14是本申请提供的又一例广告获取的方法的示意性流程图。
图15是本申请实施例提供的一例通信结构的示意性框图。
图16是本申请实施例提供的一例通信装置结构的示意性框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多 个”的含义是两个或两个以上。
另外,本申请的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,压缩盘(compact disc,CD)、数字通用盘(digital versatile disc,DVD)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(erasable programmable read-only memory,EPROM)、卡、棒或钥匙驱动器等)。另外,本文描述的各种存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。术语“机器可读介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介质。
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(Global System of Mobile communication,GSM)系统、码分多址(Code Division Multiple Access,CDMA)系统、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)系统、通用分组无线业务(General Packet Radio Service,GPRS)、长期演进(Long Term Evolution,LTE)系统、LTE频分双工(Frequency Division Duplex,FDD)系统、LTE时分双工(Time Division Duplex,TDD)、通用移动通信系统(Universal Mobile Telecommunication System,UMTS)、全球互联微波接入(Worldwide Interoperability for Microwave Access,WiMAX)通信系统、第五代(5th Generation,5G)系统或新无线(New Radio,NR)等。
另外,本申请的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,压缩盘(compact disc,CD)、数字通用盘(digital versatile disc,DVD)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(erasable programmable read-only memory,EPROM)、卡、棒或钥匙驱动器等)。另外,本文描述的各种存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。术语“机器可读介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介质。
为了进一步的提升各种APP在市场中的普及率(推广某个APP的新用户)以及利用率(APP老用户使用该APP的频率),APP的维护方会向用户推送关于该APP的广告。例如,购物类APP的维护方会在自己的广告平台上投放关于该购物类APP的广告,或者,也会在其他(例如华为)的广告平台上投放关于该购物类APP的广告。对于某一个APP而言,该APP在用户使用的终端设备上存在两种应用安装状态:一种是已安装状态,即该APP在用户的终端设备已经进行了安装。另一种是未安装状态,即该APP在用户的终端设备还没有进行安装。
由于应用(或者APP)安装状态包括已经安装状态和未安装状态,则应用安装状态定向是指:某个APP是已经安装状态,或者,该APP是未安装状态。即应用安装状态定向可以理解为某个APP在终端设备上确定的安装状态。对于一个APP而言,该APP安装状态定向为:该APP是已经安装状态,或者,该APP是未安装状态。
应用安装状态定向的广告(或者也可以称为:有应用安装状态定向的广告)是指:某一个广告设置的(或者对应的)应用安装状态定向。换句话说,应用安装状态定向的广告可以理解该广告需要投放到已经安装某个或者某些特定的APP的用户,或者,该广告需要投放到未安装某个或者某些特定的APP的用户。例如,对于某一个推广“华为视频APP”的广告而言,其设置的定向条件为:未安装“华为视频”APP的用户,则该广告就是应用安装状态定向的广告。
如果广告主(或者也可以称为广告投放商、APP维护方等)投放广告的目的是做应用拉新,应用拉新可以理解为推广某个APP的新用户,面向的用户群体一般是还未安装此APP的用户,那么广告主投放的广告定向的就是未安装该APP的用户。如果广告主投放广告的目的是应用促活,应用促活可以理解为在APP上的促销活动,面向的用户群体一般是已安装此APP的用户,那么广告主投放的广告定向就是已安装该APP的用户。
应该理解,在本申请实施例中,安装某个APP的用户或者未安装某个APP的用户均指的是:该用户使用的终端设备安装某个APP或者未安装某个APP。换句话说,安装某个APP的用户或者未安装某个APP的用户可以理解为:安装某个APP的终端设备或者未安装某个APP的终端设备。
目前,对于应用安装状态定向的广告,一般的广告投放商拥有的大数据平台都具备做人群分组标签的能力。即将用户分为安装某个或者某些APP的用户和未安装某个或者某些APP的用户。以具体的APP为淘宝APP为例。假设某个广告投放商希望投放的广告是以淘宝APP拉新为目的(即投放广告的目标人群是未安装淘宝APP的用户),该广告投放商可以根据人群分组标签,从人群分组标签中获取“已安装淘宝APP的人群分组”。广告投放商在收到用户利用终端发送的广告请求时,会根据广告请求中携带的广告跟踪标识(例如:谷歌广告标识(google advertising identifier,GAID)、匿名设备标识符(open anonymous device identifier,OAID)等)来查询该用户是否在“已安装淘宝APP的人群分组”中,如果该用户在此人群分组中,则不能投放此广告。如果该用户不在此人群分组中,则广告投放商可以向该用户投放此广告。
但是,采用上述的方案,如果用户设置了限制广告跟踪,这样,广告投放商将不能获取用户发送的广告请求中的广告跟踪标识,也即限制广告投放商无法使用该用户的广告跟踪标识。广告投放商无法使用人群分组标签,那么广告投放商在投放广告时就无法做到应用安装状态定向,严重降低了广告的投放效率。并且,广告投放商归类和统计的“已安装应用的人群分组”的数据可能不准确,那么就会导致应用安装状态定向不准确,降低了应用安装状态定向的广告的投放的准确性。
有鉴于此,本申请提供了一种广告获取的方法,通过用户周期性的上报使用的终端设备上安装的APP,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP列表,获取两者的APP交集。终端设备请求广告时携带该APP交集,广告服务器根据APP交集,按照每个需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。实现了无论用户发送的广告请求中是否携带广告跟踪标识,均可以保证应用安装状态定向准确,从而保证了应用安装状态定向的广告投放的准确性,提高应用安装状态定向的广告的投放效率。
下面结合具体的例子说明本申请提供的广告获取的方法。
图1所示为一例适用于本申请实施例的通信系统架构示意图,如图1所示的,该通信系统包括用户使用的终端设备和APP维护方使用的广告服务器。APP维护方会利用该广告服务器向用户投放关于该APP的广告。例如,淘宝APP的维护方(阿里巴巴)会在自己维护的广告服务器中向用户投放关于淘宝APP的广告,也会在华为维护的广告服务器中向用户投放关于淘宝APP的广告,或者,还可能在百度维护的广告服务器中向用户投放关于淘宝APP的广告等。
其中,终端设备上安装有多个APP,并且,多个APP上均集成了广告软件开发工具包(software development kit,SDK)模块。广告服务器包括APP列表服务模块和广告服务模块。终端设备上的广告SDK主要用于提供给APP集成,并提供广告相关请求、播放、事件上报等服务。广告服务器上的APP列表服务模块主要用于将广告SDK模块上报的用户已安装APP列表和广告服务器上存储的APP列表求交集,并将该APP交集返回给广告SDK模块。广告服务器上的广告服务模块主要用于提供请求广告服务。
在图1所示的例子中,终端设备和广告服务器之间可以通过LTE通信技术、5G通信技术等进行数据和信息的传输。本申请实施例在此不作限制。
图2所示为另一例适用于本申请实施例的通信系统架构示意图,如图2所示的,该通信系统包括用户使用的终端设备和APP维护方使用的广告服务器。其中,终端设备上安装有多个APP,并且,在该终端设备上集成了广告SDK模块,即广告SDK模块并不是集成在APP上,而是集成在终端设备的系统上。广告SDK模块可以和多个APP之间进行交互,获取终端设备上安装的APP信息。广告服务器包括APP列表服务模块和广告服务模块。
在图1和图2所示的场景中,广告服务器内(例如在广告服务模块内)维护有广告资源池,该广告资源池中存储有各个广告商上传的广告素材(例如,广告中出现的文字、图片、视频以及声音等素材)和广告信息(例如,广告名称、广告类型以及广告素材链接地址等)。其中。在该广告资源池中维护的广告中包括有应用安装状态定向的广告。
其中,上述广告信息是指用于指示待播放广告的特征属性的描述参数,例如,广告的ID、名称、广告类型以及广告素材链接地址等,本申请实施例对此不作任何限制。
相应的,上述广告素材是指展示在终端设备的显示界面上的具体广告内容,例如,广告中出现的文字、图片、视频以及声音等,本申请实施例对此也不作任何限制。
可以理解的是,图1和图2所示意的系统架构并不构成对终端设备和广告服务器的系统架构的具体限定。在本申请另一些实施例中,终端设备和广告服务器的系统架构可以包括比图示更多或更少单元或者模块,或者组合某些单元,或者拆分某些单元,或者不同的部件单元。图示的单元可以以硬件,软件或软件和硬件的组合实现。本申请实施例在此不作限制。
图3所示的为一例以分层架构的安卓(Android)操作系统为例,具体介绍本申请实施例中终端设备向广告服务器请求广告时的软件交互示意图。分层架构可将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。如图3所示,终端设备的软件结构从上至下可以分为三层:应用程序层(简称应用层),应 用程序框架层(简称框架层),系统库,安卓运行时和内核层(也称为驱动层)。
其中,应用程序层可以包括一系列应用程序包,例如相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,购物类的APP、短信息以及桌面启动(Launcher)等应用程序。为方便描述,以下将应用程序简称为应用(即APP)。终端设备上的应用可以是原生的应用(如在终端设备出厂前,安装操作系统时安装在终端设备中的应用),也可以是第三方应用(如用户通过应用商店下载安装的应用),本申请实施例不予限定。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。如图3所示,应用程序框架层可以包括窗口管理服务器(window manager service,WMS)、输入事件管理服务器(input manager service,IMS)和广告SDK模块。在一些实施例中,应用程序框架层还可以包括内容提供器,视图系统,电话管理器,资源管理器,通知管理器等(图3中未示出)。
其中,WMS承载着和“界面”有关的数据和属性,用于管理和“界面”有关的状态。例如用于管理窗口程序和事件派发。其中,管理窗口程序是指根据应用程序的显示请求在应用服务端和WMS的协助下有序地输出给物理屏幕或其他显示设备。事件派发是指将来自键盘、物理按键、触摸屏、鼠标、轨迹球(TraceBoll)等的用户事件派发给相应的控件或窗口。
IMS可以用于对原始输入事件进行翻译、封装等处理,得到包含更多信息的输入事件,并发送到WMS,WMS中存储有每个应用程序的可点击区域(比如控件)、焦点窗口的位置信息等。因此,WMS可以正确的将输入事件分发到指定的控件或者焦点窗口。
广告SDK模块主要用于提供广告相关请求、播放、事件上报等服务。广告服务器上的APP列表服务模块主要用于将广告SDK模块上报的用户已安装APP列表和广告服务器上存储的APP列表求交集,并将该APP交集返回给广告SDK模块。广告服务器上的广告服务模块主要用于提供请求广告服务。
系统库和安卓运行时包含FWK所需要调用的功能函数,Android的核心库,以及Android虚拟机。系统库可以包括多个功能模块。例如:浏览器内核,三维(3 dimensional,3D)图形,字体库等。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
内核层是硬件和软件之间的层。内核层可以包含显示驱动,输入/输出设备驱动(例如,键盘、触摸屏、耳机、扬声器、麦克风等),设备节点,摄像头驱动,音频驱动以及传感器驱动等。用户通过输入设备进行输入操作,内核层可以根据输入操作产生相应的原始输入事件,并存储在设备节点中。输入/输出设备驱动可以检测到用户的输入事件。例如,用户启动应用的操作。
在本申请实施例中,在终端设备向广告服务器请求广告的过程中,终端设备的输入/输出设备驱动或传感器驱动可以检测用户的输入事件。例如,该输入事件可以是用户点击某一APP界面上的按钮以进入该APP界面的下一级界面的输入事件,终端设 备的输入/输出设备驱动或传感器驱动将用户的输入事件上报给IMS。MS将该输入事件分发给相应的应用。应用调用广告SDK模块,广告SDK模块调用数据获取模块获取终端设备已经安装的APP列表交集,APP列表交集为终端设备上安装的APP与广告服务器上存储的APP列表的交集。广告服务模块根据APP列表交集,确定终端设备已经安装的APP列表,根据用户已经安装APP列表以及广告的定向需求,确定出符合投放条件的广告,发送给广告SDK模块,广告SDK模块将广告信息发送给WMS,WMS重新调用终端设备上的显示驱动,以实现在终端设备显示屏上的同步显示需要投放的广告。
需要说明的是,图3仅以分层架构的Android系统为例,介绍终端设备向广告服务器请求广告时的软件交互示意图。本申请不限定终端设备和广告服务器软件系统的具体架构,关于其他架构的软件系统的具体介绍,可以参考常规技术。
本申请实施例中的终端设备可以指用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。终端设备还可以是蜂窝电话、无绳电话、会话启动协议(Session Initiation Protocol,SIP)电话、无线本地环路(Wireless Local Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,5G网络中的终端设备或者未来演进的公用陆地移动通信网络(public land mobile network,PLMN)中的终端设备等,本申请实施例对此并不限定。
例如,本申请实施例中的终端设备可以是:智能手机、智能电视、平板电脑、上网本、PDA、电脑手持式通信设备、手持式计算设备、智能手环、智能手边、可穿戴腕式设备、智能眼镜等。本申请实施例在此不作限制。
图4所示的为本申请提供的一例广告主在广告平台上创建应用安装状态定向的广告的示意性界面图,广告主可以在该界面上创建广告任务。如图4所示的,广告主可以在“推广应用ID”菜单栏中选择或者输入某一个广告需要定向的APP。例如为“京东APP”。在选择好之后,可以在“新建定向”菜单栏中选择该广告需要定向的条件。例如:该广告需要定向的条件包括:该广告需要定向的地域、用户的性别、用户的年龄、“APP”是否安装、“APP”的行为、需要投放的设备的分类、需要投放的设备的联网方式等。广告主可以在这些定向的条件中选择一个或者多个。例如,假设广告主选择了:已安装“京东APP”。则该广告定向投放于已安装“京东APP”的用户。如果广告主在这些定向的条件中选择了多个条件,则该广告定向投放于满足这些多个条件的用户。在广告主将定向条件选择完毕之后,可以将选择好定向条件的信息以及该广告的信息录入至广告服务器中,广告服务器可以根据广告的定向条件,向符合定向条件的用户投放该广告。
可以理解的是,图4所示意界面图并不对广告主创建广告任务的界面图产生任何限制。在本申请另一些实施例中,广告主创建广告任务的界面图可以包括比图4所示的更多或更少元素,或者组合某些元素,或者拆分某些元素,或者不同的元素等。例如,可以包括比图2所示的定向的条件更多的其他定向条件等。本申请实施例在此不作限制。
下面结合具体的例子说明本申请提供的广告获取的方法。
图5所示的为本申请提供的一例广告获取的方法100的示意性流程图。该方法100可以应用在图1所示的系统中。
应理解,在本申请各个实施例中,“APP”和“应用”表达的是相同的意思,两种表述之间可以进行替换。
在图5所示的方法中,假设:
广告投放商在广告服务器中需要投放的应用安装状态定向的广告包括:
广告A:定向于已经安装淘宝APP的用户。
广告B:定向于已经安装京东APP的用户。
广告C:定向于未安装拼多多APP的用户。
例如,广告投放商可以在图4所示的界面,向广告服务器录入这些应用安装状态定向的广告。
广告服务器中的APP列表服务模块中存储的应用列表为表1所示的。
表1:APP列表服务模块中存储的应用列表
应用包名 应用名称
com.taobao.taobao 淘宝
com.jingdong.app.mall 京东
com.xunmeng.pinduoduo 拼多多
com.ss.android.ugc.aweme 抖音
com.smile.gifmaker 快手
com.sdu.didi.psnger 滴滴出行
com.sankuai.meituan 美团
即广告服务器上的APP列表服务模块中存储的APP(或者也可以称为APP包名)包括:
com.taobao.taobao;com.jingdong.app.mall;com.xunmeng.pinduoduo;
com.ss.android.ugc.aweme;com.smile.gifmaker,com;sdu.didi.psnger;
com.sankuai.meituan;
应该理解,表1仅仅是示例性的,不应该对本申请实例造成任何限制。在本申请实施例中,APP列表服务模块中实际存储的APP的数量是巨大的,不限于表1中所示的。
假设:用户在终端设备上已经安装的APP包括:
com.huawei.scenepack;com.huawei.hifolder;com.android.cts.priv.ctsshim;
com.huawei.camera;com.huawei.android.tips;com.huawei.camerakit.impl;
com.huawei.synergy;com.huawei.android.launcher;com.android.mediacenter;
com.android.providers.telephony;com.unionpay.tsmservice;
com.jingdong.app.mall;com.xunmeng.pinduoduo;
应该理解,上述的终端设备上已经安装的APP仅仅是示例性的。不应该对本申请实例造成任何限制。在本申请实另一些施例中,终端设备上已经安装的APP的数量是 巨大的,可以包括上述的示例中的APP,或者不包括上述示例中的APP。本申请实施例在此不作限制。
如图5所示的,该方法100包括:S110至S190。
S110,终端设备周期性的向广告服务器上的APP列表服务模块发送查询请求,该查询请求包括用户在终端设备上已安装的APP列表。例如,终端设备中的广告SDK模块周期性的向广告服务器上的APP列表服务模块发送查询请求。
例如,在S110中,终端设备可以通过调用“查询有应用安装状态定向的广告的APP列表接口”向广告服务器上的APP列表服务模块发送该查询请求,该查询请求包括用户在该终端设备上已安装的APP列表。
可选的,在S110中,终端设备可以在每次开机后,或者每次检测到有新的APP下载安装后,或者周期性的(例如,每隔一天或者两天等)向APP列表服务模块发送查询请求。或者,终端设备还可以根据终端设备设备目前的网络状态(例如连接的网络类型、网速等),确定发送该查询请求的时机。
可选的,在S110,作为一种可能的实现方式,用户还可以通过授权的方式,使得广告SDK模块或者终端设备获取该终端设备上安装的APP信息。例如,终端设备可以向用户显示一个弹框,用于提示用户选择“是否允许获取终端设备上安装的APP列表”。用户通过确认,同意获取终端设备上安装的APP列表,则广告SDK模块或者终端设备可以获取该终端设备上安装的APP信息,并向APP列表服务模块发送该查询请求。
可选的,在S110,作为另一种可能的实现方式,也可以不用用户的授权,广告SDK模块或者终端设备可以在终端设备每次开机后,或者每次检测到有新的APP下载安装后,或者周期性的(例如,每隔一天或者两天等)自动获取终端设备上安装的APP信息,并向APP列表服务模块发送该查询请求。
假设:终端设备上已安装的APP列表(或者也可以称为APP包名的列表)为:
com.huawei.scenepack;com.huawei.hifolder;com.android.cts.priv.ctsshim;
com.huawei.camera;com.huawei.android.tips;com.huawei.camerakit.impl;
com.huawei.synergy;com.huawei.android.launcher;com.android.mediacenter;
com.android.providers.telephony;com.unionpay.tsmservice;
com.jingdong.app.mall;com.xunmeng.pinduoduo;
示例性的,该查询请求携带的参数代码可以如下所示:
{
"insApps"://终端设备上已安装的应用
"com.huawei.scenepack,com.huawei.hifolder,com.android.cts.priv.ctsshim,com.huawei.camera,com.huawei.android.tips,com.huawei.camerakit.impl,com.huawei.synergy,com.huawei.android.launcher,com.android.mediacenter,com.android.providers.telephony,com.unionpay.tsmservice,com.jingdong.app.mall,com.xunmeng.pinduoduo"//终端设备上已安装的应用包名
}
S120,广告服务器上的APP列表服务模块根据终端设备上已安装的APP列表和 APP列表服务模块中存储的APP列表,确定APP交集。
在本申请实施例中,APP列表服务模块中存储的APP是和广告主需要投放的广告相关的APP。在广告主需要投放的广告中,有些广告需要定向投放安装某些或者某个APP的用户,有些广告需要定向投放未安装某些或者某个APP的用户,有些广告则没有应用安装定向的要求,可以投向安装某些或者某个APP的用户以及未安装某些或者某个APP的用户。该APP列表服务模块中存储的APP列表包括:应用安装状态定向(包括安装和未安装)的APP以及与没有应用安装状态定向的广告关联的APP。
在S120中,由于用户在终端设备上真实安装APP的个数是巨大的,在这些APP中包括一些系统内置的APP,这些系统内置的APP是不会用于广告投放的。另外,在这些APP中,还有一些APP是广告平台当前未使用的,这些APP也不会用于广告投放的。因此,在终端设备上真实安装的APP中,可以将不会用于广告投放的APP过滤掉。而广告服务器上的APP列表服务模块中存储的APP基本上都是用于广告投放的,在这些APP中,有的还需要投放有应用安装状态定向的广告。因此,可以在终端设备上已安装的APP列表和APP列表服务模块中存储的APP列表中,确定APP交集。该APP交集中包括的APP基本上都是用于广告投放的,这样可以准确的确定出需要广告投放的APP。
假设:在S120中,广告服务器上的APP列表服务模块中存储的APP包括:
com.taobao.taobao;com.jingdong.app.mall;com.xunmeng.pinduoduo;
com.ss.android.ugc.aweme;com.smile.gifmaker,com;sdu.didi.psnger;
com.sankuai.meituan;
假设:终端设备上已经安装的APP包括:
com.huawei.scenepack;com.huawei.hifolder;com.android.cts.priv.ctsshim;
com.huawei.camera;com.huawei.android.tips;com.huawei.camerakit.impl;
com.huawei.synergy;com.huawei.android.launcher;com.android.mediacenter;
com.android.providers.telephony;com.unionpay.tsmservice;
com.jingdong.app.mall;com.xunmeng.pinduoduo;
则APP交集包括:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
S130,广告服务器上的APP列表服务模块向终端设备发送该APP交集。例如,APP列表服务模块可以向终端设备中的广告SDK模块发送该APP交集。
在本申请实施例中,如果将该APP交集存储在广告服务器上,那么必须有与该APP交集对应的用户的标识。一方面,如果用户设置了限制广告跟踪,广告服务器接收到的用户发送的广告请求中不能确定出用户的标识,即不能将该APP交集与用户相关联。另一方面,由于广告服务器对用户发送的广告请求是无法做认证鉴权的,也即无法确定该广告请求是否是合法请求,如果广告请求是攻击者的恶意请求,则可能会导致拒绝服务(denial of service,Dos)攻击。即攻击者只需要变更广告请求的用户标识,便可以无穷次发送广告请求,这样会极大的消耗广告服务器的存储资源,甚至会造成广告服务器无法使用。因此,在S130中,广告服务器上的APP列表服务模块会将该APP交集发送给用户使用的终端设备,这样可以节省广告服务器的存储资源,保 障广告服务器可以正常工作,保证了广告服务器的工作效率。
假设:该APP交集包括:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
示例性的,APP列表服务模块向广告SDK模块发送该APP交集时携带的参数代码可以如下所示:
Figure PCTCN2022085371-appb-000001
S140,终端设备接收并保存该APP交集。例如,可以是终端设备中的广告SDK模块保存该APP交集。
例如,集合上述的例子,广告SDK模块保存的APP交集为:
com.jingdong.app.mall,com.xunmeng.pinduoduo;
应该理解,在本申请实例中,S110至S140这几个步骤可以是多次执行的,例如,可以是周期性执行的,或者,可以在终端设备可以在每次开机后,或者每次检测到有新的APP下载安装后执行。本申请实施例在此不作限制。
在S150中,终端设备接收用户的操作,该操作用于触发发送广告请求。
例如,该操作可以包括:用户在终端设备上打开某一个APP(例如华为视频APP),或者,进入某个APP指定的界面,或者,用户在终端设备上打开某一个视频类的APP后,点击显示的某一个视频,或者,在视频播放的过程中,检测到用户的暂停操作,便触发发送广告请求。或者,用户在终端设备上打开某一个APP(例如为购物类的APP),或者,用户点击某一个APP(例如为购物类的APP)里面的某一个链接,打开一个商品界面等,终端设备上的APP检测到了这些操作中的任意一个,触发终端设备生成广告请求,并发送广告请求。本申请实施例在此不作限制。
可选的,在S150中,作为另外一种可能的实现方式,该广告请求也可以是终端设备上的APP在运行过程中自动触发的。用户只需要打开某一个APP,该APP在运行的过程中便可以自动的触发发送广告请求。例如,APP可以是周期性的(例如,每隔一天或者两天等)自动触发终端设备发送广告请求,或者,该APP还可以根据终端设备设备目前的网络状态(例如连接的网络类型、网速等),确定触发发送广告请求的时机。本申请实施例在此不作限制。
S160,终端设备根据操作,向广告服务器上的广告模块发送广告请求(或者也可称为广告查询请求),该广告请求包括该APP交集。例如,可以是终端设备中的广告SDK模块发送该广告请求。
在步骤S160中,终端设备可基于超文本传输协议(hypertext transfer protocol,HTTP)、以安全为目标的HTTP通道(HTTPS)、文件传输协议(file transfer protocol,FTP)或安全文件传送协议(secure file transfer protocol,SFTP)等网络协议向广告服务器中的广告模块发送上述广告请求,该广告请求包括该APP交集。
示例性的,当用户打开终端设备内安装的某一个客户端时,可触发该客户端调用广告SDK模块,通过HTTP中的JavaScript对象标记(javascript object notation,JSON)消息格式向广告服务器发送广告请求。
其中,上述广告请求中还可以携带用户当前使用的APP的应用包名(pkgname),广告位ID(slotid)、请求的广告类型(adtype)等参数,以便于接收到该广告请求的广告服务器可以确定出与该广告请求匹配的广告信息。
其中,上述广告位ID用来唯一表示在当前App上的展现本次待播放广告的具体位置。其中,上述广告位ID用来唯一表示在当前App上的展现本次待播放广告的具体位置;上述请求的广告类型可以包括横幅广告(banner),开屏广告(splash)以及原生广告(native)等多种类型,不同的广告类型可以利用不同的数字表示。
进一步地,上述广告请求中还可以包括广告位宽度(width)和广告位高度(height),其中,上述广告位宽度和广告位高度一般小于终端设备屏幕的宽度和高度。
另外,上述广告请求中还可以包括终端设备的设备信息,例如,终端设备内操作系统版本号(version),终端设备所属的设备厂商(maker),终端设备的设备型号(model),终端设备使用的操作系统语言(language),终端设备的标识(oaid)、终端设备的类型(type)、版本(version)、SDK的版本号等。
假设:广告SDK模块保存的APP交集为:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
用户当前使用的APP为"华为钱包"。
示例性的,该广告请求携带的参数代码可以如下所示:
Figure PCTCN2022085371-appb-000002
Figure PCTCN2022085371-appb-000003
在S160中,由于该广告请求中携带该APP交集,而不用携带终端设备上真实安装的所有的APP的信息(例如所有APP的列表),一方面可以降低用户的使用流量,避免过多的浪费通信资源。另一方面,会降低用户的广告请求的时延,从而提高用户体验以及广告的展示率。
S170,广告服务器上的广告模块根据广告请求,获取用户已经安装APP列表;根据用户已经安装APP列表以及广告的定向需求,确定出符合投放条件的广告。定向需求包括:向已安装的应用程序中投放广告,和/或,向未安装的应用程序中投放广告。
例如,在S170中,结合上述的例子,确定出的用户已经安装APP列表为:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
对于广告主的投放广告A的定向需求为已经安装淘宝APP的用户,广告服务器根据APP列表,判断用户使用的终端设备上没有安装淘宝,因此该用户不符合广告A的投放条件,确定广告A为不符合投放条件的广告。
对于广告主的投放广告B的定向需求为已经安装京东APP的用户,广告服务器根据APP列表,判断用户使用的终端设备上已经安装京东APP,因此该用户符合广告B的投放条件,确定广告B为符合投放条件的广告。
对于广告主的投放广告C的定向需求为未安装拼多多APP的用户,广告服务器根据APP列表,判断用户使用的终端设备上已经安装了拼多多APP,因此该用户不符合广告C的投放条件,确定广告C为不符合投放条件的广告。
那么确定出的符合投放条件的广告只有广告B。
S180,广告服务器上的广告模块向终端设备发送符合投放条件的具有应用安装状态定向的广告。该广告包括定向于安装某个APP的广告,和/或,定向未安装某个APP的广告。
例如,结合上述的例子,在S180中,广告服务器上的广告模块向终端设备上的广告SDK模块发送响应信息,该响应信息包括广告B的广告信息。
示例性的,响应信息可以包括上述广告请求的返回值(retcode),广告位ID(slotid)。 广告ID、广告的创意类型(creativetype)、广告的交互类型(interactiontype)、广告素材的下载链接、广告定向的APP包名等参数。其中,广告的创意类型可以包括文字广告,图片广告,图文广告以及图像互换格式(GIF)广告等类型。广告的交互类型可以包括用户点击后无反应,用户点击后打开相关网页,用户点击后下载应用,以及用户点击后进入应用等交互类型。
示例性的,广告模块向广告SDK模块投放广告B(广告B的ID为“2”)的信息中携带的参数代码可以如下所示:
Figure PCTCN2022085371-appb-000004
在S190中,终端设备接收到广告信息后,便可以向用户显示广告信息。
例如,假设用户使用的终端设备上已经安装了京东APP,用户在终端设备上浏览新闻,终端设备上显示的界面如图6中的a图所示的,在这个过程中,终端设备检测到用户的一个操作(例如点开了一个具体的新闻信息),触发了终端设备向广告服务器发送广告请求。广告服务器根据用户已经安装的APP列表,向终端设备发送符合投放条件的具有应用安装状态定向的广告。该广告定向于用户安装了京东APP。例如,该广告为京东APP上的一个长裤广告,终端设备上显示的该广告的弹框可以为如图6中的a所示的。用户可以点击该弹框,显示的界面为可以为如图6中的b图所示的,直接进入到京东APP内的长裤信息的详情界面,用户可以在该界面上根据自己需要进行购买或者加入自己的购物车。
又例如,如图7所示的,用户利用播放器在播放视频,终端设备在播放视频时如果检测到用户点击了暂停按钮,则触发终端设备向广告服务器发送广告请求,广告服务器根据用户已经安装的APP列表,向终端设备发送符合投放条件的具有应用安装状态定向的广告。例如,该广告为购物类APP上的一个华为手机的广告,假设终端设备上已经安装了该购物类APP,终端设备上显示的该广告的弹框可以为如图7中的a所示的。用户可以点击该弹框,直接进入到购物类APP的华为手机详情界面,显示的界面为可以为如图7中的b图所示的,用户可以在该界面上根据自己需要进行购买或者 加入自己的购物车。
又例如,如图8所示的,在本申请的一些实施例中,当终端设备检测到用户进入某个App的指定界面时,可认为终端设备此时存在展示广告的需求。如图8中的a图所示的,终端设备检测到用户已经打开浏览器后,触发终端设备向广告服务器发送广告请求,广告请求中携带终端设备安装的APP列表。广告服务器根据用户已经安装的APP列表,向终端设备发送符合投放条件的具有应用安装状态定向的广告。例如,该广告为购物类APP上的一个华为手机的广告,假设终端设备上已经安装了该购物类APP,终端设备上显示的该广告的弹框可以为如图8中的a所示的。用户可以点击该弹框,直接进入到购物类APP的华为手机详情界面,显示的界面为可以为如图8中的b图所示的,用户可以在该界面上根据自己需要进行购买或者加入自己的购物车。
再例如,如图9所示的,在本申请的一些实施例中,当终端设备检测到用户启动某个App时,可认为终端设备此时存在展示广告的需求。如图9中的a图所示的,终端设备检测到用户点击桌面中浏览器应用的图标时,触发终端设备向广告服务器发送广告请求,广告请求中携带终端设备安装的APP列表。广告服务器根据用户已经安装的APP列表,向终端设备发送符合投放条件的具有应用安装状态定向的广告。例如,该广告定向于购物类APP上的一个华为Mate系列手机的广告,假设终端设备上已经安装了该购物类APP,终端设备上显示的该广告的弹框可以为如图9中的b图所示的,即在加载浏览器过程中向用户展示该广告素材。用户可以点击该弹框,直接进入到购物类APP的华为Mate系列手机详情界面,用户可以在该界面上根据自己需要进行购买或者加入自己的购物车。
可选的,作为另一种可能的实现方式,终端设备还可以提前将广告服务器投放的广告存储在本地。如图9中的a图所示的,当终端设备检测到用户点击桌面中浏览器应用的图标时,触发终端设备显示本地存储的广告,显示的界面例如为如图9中的b图所示的,用户可以点击该弹框,直接进入到购物类APP的该华为Mate系列手机详情界面。
换句话说,在本申请实施例中,如果广告服务器向用户投放的广告定向于已经安装某一个APP的广告,则在S180中,广告服务器向终端设备发送的广告信息包括的链接可以为指向该APP内部的一个界面的链接。在终端设备的界面上显示的广告弹窗指向的链接为该APP内具体的一个界面或一个商品详情页的链接。用户点击该弹窗,便跳转到该APP内具体的一个界面上。
可选的,作为另一种可能的实现方式,如果广告服务器向用户投放的广告定向于未安装某一个APP的广告,在这种情况下,用户没有安装该APP,广告服务器向终端设备发送广告信息包括的链接可以为指向该APP安装界面的链接。在终端设备界面上显示的广告弹窗指向的链接为该APP安装界面的链接。用户可以在终端设备显示的界面上点击该广告弹窗,便跳转到该APP的安装界面上,用户可以根据自己的需求,确定是否安装该APP。
例如,假设:广告主的投放广告A的定向需求为未安装淘宝APP的用户,在S170中,广告服务器根据APP列表,判断用户使用的终端设备上没有安装淘宝APP,因此该用户符合广告A的投放条件,确定广告A为投放条件的广告。
示例性的,广告服务模块向广告SDK模块投放广告A(广告A的ID为“3”)的信息中携带的参数代码可以如下所示:
Figure PCTCN2022085371-appb-000005
用户在接收到该广告信息后,可以利用"com.taobao.app.mall"去应用市场或者浏览器中下载并安装淘宝APP。
例如,假设用户使用的终端设备上没有安装淘宝APP,用户在终端设备上某一个APP上浏览新闻,在这个过程中,终端设备向广告服务器发送广告请求。该广告请求可以是终端设备检测到用户的一个操作(例如点开了一个具体的新闻信息),触发了终端设备向广告服务器发送广告请求,或者,也可是APP在运行的过程,自动触发向广告服务器发送广告请求,如图10中的a图或者图8中的a图所示的广告类型。广告服务器根据用户已经安装的APP列表,向终端设备发送符合投放条件的具有应用安装状态定向的广告。该广告定向于未安装淘宝APP的用户。例如,该广告为淘宝APP上的一个针织毛衫的广告,终端设备上显示的该广告的弹框可以为如图10中的a所示的。用户可以点击该弹框,显示的界面为可以为如图10中的b图所示的,显示的界面上提示用户是否下载淘宝APP,用户可以在该界面上根据自己需要确定是否下载淘宝APP,如果选择下载,则点击“下载淘宝APP后”直接跳转到应用市场中下载淘宝APP的界面上,如图10中的c所示的,用户可以根据自己的需要,确定是否下载淘宝。
又例如,假设用户使用的终端设备上没有安装淘宝APP,用户在终端设备上浏览新闻,终端设备上显示的界面如图11中的a图所示的,在这个过程中,终端设备检测到用户的一个操作(例如点开了一个具体的新闻信息),触发了终端设备向广告服务器发送广告请求,广告服务器根据用户已经安装的APP列表,向终端设备发送符合投放条件的具有应用安装状态定向的广告。该广告定向于未安装淘宝APP的用户。例如,该广告为推广淘宝APP的广告,终端设备上显示的该广告的弹框可以为如图11中的a所示的。用户可以点击该弹框,显示的界面为可以为如图11中的b图所示的,显示的界面上包括淘宝APP的简介。用户可以在该界面上根据自己需要确定是否下载淘宝APP。如果下载,则点击“立即下载”,直接跳转到应用市场中下载淘宝APP的界面上, 如图11中的c所示的,用户可以根据自己的需要,确定是否安装淘宝APP。
可选的,在如图10和图11所示的界面中。例如,用户在图11中的a图界面上操作后,也可以直接跳转到图11中的c图界面,即图11中的b图所显示的界面可以是可选的,可以不显示图11中的b图所显示的界面。对于图10中的b图所显示的界面也可以是可选的,即也可以不显示图10中的b图所显示的界面。
还应理解,在本申请实施例中,图6至图11所示的界面图仅仅是示例性的,不应该对本申请实施例中用户触发终端设备发送广告请求以及终端设备显示广告的界面产生任何限制。例如,在本申请另一些实施例中,终端设备显示的界面上的图标可以包括比图6至图11所示界面上显示的更多或更少图标,或者组合某些图标,或者拆分某些图标,或者不同的图标等。本申请实施例在此不作限制。
本申请提供的广告获取的方法,通过用户周期性的上报终端设备上安装的APP,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP列表,获取两者的APP交集,并将该APP交集发送给终端设备。终端设备请求广告时携带该APP交集,广告服务器根据APP交集,按照每个需要投放的广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。实现了无论用户发送的广告请求中是否携带广告跟踪标识,均可以保证应用安装状态定向准确,从而保证了应用安装状态定向的广告投放的准确性,并且,还会降低用户的广告请求的时延,从而提高广告的展示率提高应用安装状态定向的广告的投放效率,提高用户体验。
可选的,在本申请实例中,作为另一种可能的实现方式,如图12所示的,图12所示的为本申请提供的另一例广告获取的方法200的示意性流程图。如图12所示的,该方法200包括:S210至S291。
在图12所示的方法中,假设:
广告投放商在广告服务器中需要投放的应用安装状态定向的广告包括:
广告A:定向于已经安装淘宝APP的用户。
广告B:定向于已经安装京东APP的用户。
广告C:定向于未安装拼多多APP的用户。
S210,终端设备周期性的向广告服务器上的APP列表服务模块发送查询请求,该查询请求包括用户在终端设备上已安装的APP列表。
S220,广告服务器上的APP列表服务模块根据终端设备上已安装的APP列表和APP列表服务模块中存储的APP列表,确定APP交集。
其中S210和S220对应的具体步骤的描述可以参考上述方法100中S110和S120中对应步骤的描述,为了简洁,这里不再赘述。
S221,广告服务器上的APP列表服务模块对该APP交集包括的APP进行短编码。
具体的,在S221中,由于在实际中,该APP交集包括的APP的个数可能也是巨大的,即APP交集所占用字符串的长度很大,这样,在终端设备发送广告请求中携带该APP交集,一方面将会影响用户的使用流量,另一方面是会影响用户广告请求的时延,从而影响用户的体验以及广告的展示率。因此,在S221中,可以对该APP交集包括的APP(APP包名)进行短编码。
例如,在本申请实施例中,广告服务器上的APP列表服务模块可以对广告服务器 上的APP列表服务模块中存储的APP进行短编码,短编码的方式包括可以降低需要编码的字符的长度的所有编码方式,即编码前的字符长度大于编码后的字符长度。
例如,广告服务器上的APP列表服务模块中存储的APP(APP包名)包括:
com.taobao.taobao;com.jingdong.app.mall;com.xunmeng.pinduoduo;
com.ss.android.ugc.aweme;com.smile.gifmaker,com;sdu.didi.psnger;
com.sankuai.meituan;
其中,APP列表服务模块利用短编码方式1(短编码方式1为某一种短编码方式的标识)对这些APP进行编码。广告服务器中的APP列表服务模块中存储的APP进行短编码的情况可以如表2所示的。
表2:APP列表服务模块中存储的应用列表进行短编码的表
应用包名 应用名称 短编码方式的标识 短编码值
com.taobao.taobao 淘宝 1 ac1g6
com.jingdong.app.mall 京东 1 d56bw
com.xunmeng.pinduoduo 拼多多 1 e00ht
com.ss.android.ugc.aweme 抖音 1 ef0h4
com.smile.gifmaker 快手 1 asd0h
com.sdu.didi.psnger 滴滴出行 1 mk9rc
com.sankuai.meituan 美团 1 ju896
从表2可以看出,应用包名的字符串经过短编码后得到的短编值的字符串长度,和原始的应用包名的字符串的长度相比较,明显缩短。在表2所示的例子中,每个应用包名进行短编码后的结果利用5个字符表示。
在S221中,结合方法100的例子,假设APP交集包括:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
将上述APP交集包括APP利用短编码方式1进行短编码后得到结果为:
encodedapps:["d56bw","e00ht"]。
“encodedapps”表示进行短编后的APP得到的短编码值。
短编码方式1可以表示为:encodingmode:1;
其中,“encodingmode”用于表示短编码方式。
则对该APP交集进行短编码后的编码结果以及短编码方式可以表示为:
encodedapps:["d56bw","e00ht"],encodingmode:1;
在表2所示的例子中,短编码后的结果仅仅使用大写字母、小写字母以及数字进行表示,即利用:a至z、A至Z、以及0至9表示短编码结果。a至z、A至Z、以及0至9总共有62个字符。对于每个应用包名,从1开始计数,递增为每个应用包名分配一个数字标识(identity,ID),正常的数字ID是10进制的。再把这个数字ID转换成62进制,那么就会将原字符的长度缩短很多。
例如,3个字符能生成623个ID,也即238328个ID。
4个字符能生成62 4个ID,也即14776336个ID。
5个字符能生成625个ID,也即916132832个ID。
假设:用户在终端设备已经安装了252个应用(APP),所有APP包名的总长度为 6087个字符。如果按照每个应用包名进行短编码后的短编码值利用5个字符表示,假设全部应用都进行短编码,则进行短编码的字符总长度是252×6=1512个字符,长度已经减小到原来的四分之一。再假设求APP交集后只有四分之一的包名是在该APP交集中包括,则总字符长度又变成了378个字符。
可选的,在S221中,作为另一种可能的实现方式。在本申请实施例中,假设上述的62个字符不够用,又加了其他的可见字符,总共有变成了82个不同的字符,那么进行短编码和解码的算法以及字符集就会发生变化,一个应用包名经过编码后的长度为4个字符。例如,表3所示的为利用82个不同的字符将APP列表服务模块中存储的应用列表进行短编码的表格。
表3:APP列表服务模块中存储的应用列表进行短编码的表格
应用包名 应用名称 短编码方式的标识 短编码值
com.taobao.taobao 淘宝 2 A?1g
com.jingdong.app.mall 京东 2 d5@b
com.xunmeng.pinduoduo 拼多多 2 e0%h
com.ss.android.ugc.aweme 抖音 2 ef0h
com.smile.gifmaker 快手 2 Asd&
com.sdu.didi.psnger 滴滴出行 2 mk9>
com.sankuai.meituan 美团 2 ju8#
从表3可以看出,应用包名的字符串经过短编码后得到的短编值的字符串长度,和原始的应用包名的字符串的长度相比较,明显缩短。在表3所示的例子中,每个应用包名进行短编码后的结果利用4个字符表示。
在S211中,假设APP交集包括:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
将上述APP交集包括APP利用短编码方式2进行短编码后得到结果为:
encodedapps:["d5@b","e0%h"];
“encodedapps”表示进行短编后的APP得到的短编码值,
短编码方式2可以表示为:encodingmode:2;
其中,“encodingmode”用于表示短编码方式。
则对该APP交集进行短编码后的编码结果以及短编码方式可以表示为:
encodedapps:["d5@b","e0%h"],encodingmode:2;
应理解,在本申请实施例中,短编码的方式包括很多种,上述表2和表3的例子不应该本申请实施例中短编码方式造成限制。在本申请的另一些实施例中,还可以其他的短编码方式对APP交集包括APP包名进行短编码。本申请实施例在此不作限制。
还应理解,在本申请实施例中,如果当前使用的短编码方式不是最短的,则还可以利用其他的短编码方式,但是无论采用哪种短编码方式,都需要用一个ID表示使用的短编码方式,即需要“encodingmode”字段。这样在解码时才知道如何去做反向解码。
S230,广告服务器上的APP列表服务模块向终端设备发送短编码后APP交集以及短编码方式。
结合上述的例子,假设APP交集包括:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
则短编码后APP交集以及短编码方式为:
encodedapps:["d5@b","e0%h"],encodingmode:2;
或者为:
encodedapps:["d56bw","e00ht"],encodingmode:1;
示例性的,短编码后APP交集以及短编码方式的代码可以如下所示:
Figure PCTCN2022085371-appb-000006
S240,终端设备接收并保存该短编码后APP交集以及短编码方式。
例如,在S240中,终端设备存储的短编码后APP交集以及短编码方式为:
encodedapps:["d56bw","e00ht"],encodingmode:1;
或者为:
encodedapps:["d5@b","e0%h"],encodingmode:2;
S250,终端设备接收用户的操作,该操作用于触发发送广告请求。
其中S250对应的具体步骤的描述可以参考上述方法100中S150中对应步骤的描述,为了简洁,这里不再赘述。
S260,终端设备向广告服务器上的广告模块发送广告请求,该广告请求包括该短编码后APP交集以及短编码方式。
在步骤S260中,终端设备可基于HTTP、以安全为目标的HTTP通道(HTTPS)、文件传输协议(FTP)或安全文件传送协议(SFTP)等网络协议向广告服务器中的广告模块发送上述广告请求,该广告请求包括该短编码后APP交集以及短编码方式。
假设:广告SDK模块存储的短编码后APP交集以及短编码方式为:
encodedapps:["d5@b","e0%h"],encodingmode:2;
示例性的,在S250中,广告请求携带的参数代码可以如下所示:
Figure PCTCN2022085371-appb-000007
Figure PCTCN2022085371-appb-000008
S270,广告服务器上的广告模块根据短编码后APP交集以及短编码方式,获取用户已经安装APP列表。
在S270中,广告服务器上的广告模块首先根据短编码方式的标识,确定出相应的解码方式,然后根据解码方式,对短编码后APP交集进行解码,最终确定出的用户已经安装APP列表。
例如,假设短编码后APP交集以及短编码方式为:
encodedapps:["d5@b","e0%h"],encodingmode:2;
广告服务器上的广告模块首先根据短编码方式的标识“encodingmode:2”,确定出使用的解码方式的标识也应该为“2”。然后对["d5@b","e0%h"]进行解码,最终确定出的用户已经安装APP包名列表为:
com.jingdong.app.mall;com.xunmeng.pinduoduo;
S280,广告服务器上的广告模块根据用户已经安装APP列表以及广告的定向需求,确定出符合投放条件的广告。定向需求包括:向已安装的应用程序中投放广告,和/或,向需求为向未安装的应用程序中投放广告。
S280对应的具体步骤的描述可以参考上述方法100中S170对应步骤的描述,为了简洁,这里不再赘述。
S290,广告服务器上的广告模块向终端设备上的广告SDK模块发送符合投放条件的具有应用安装状态定向的广告。该广告包括定向于安装某个APP的广告,和/或,定向未安装某个APP的广告。
S290对应的具体步骤的描述可以参考上述方法100中S180对应步骤的描述,为了简洁,这里不再赘述。
例如,在S290中,广告服务器上的广告模块向终端设备上的广告SDK模块发送或者投放广告B。
示例性的,假设短编码后APP交集为:
encodedapps:["d5@b","e0%h"];
对于广告主的投放广告B的定向需求为已经安装京东APP的用户,根据APP列表,判断用户使用的终端设备上已经安装京东APP,因此该用户符合广告B的投放条件,确定广告B为符合投放条件的广告。
则广告模块向广告SDK模块投放广告B(广告B的ID为“2”)的信息中携带的参数代码可以如下所示:
Figure PCTCN2022085371-appb-000009
可选的,作为另外一种可能的实现方式,假设广告主的投放广告A的定向需求为未安装淘宝APP的用户,在S280中,广告服务器根据APP列表,判断用户使用的终端设备上没有安装淘宝APP,因此该用户符合广告A的投放条件,确定广告A为投放条件的广告。
示例性的,广告服务模块向广告SDK模块投放广告A(广告A的ID为“3”)的信息中携带的参数代码可以如下所示:
Figure PCTCN2022085371-appb-000010
在S291中,终端设备接收到广告信息后,便可以向用户显示广告信息。
终端设备在接收到该广告信息后,可以利用"com.taobao.app.mall"去应用市场或者浏览器中下载并安装淘宝APP。
本申请提供的广告获取的方法,通过用户周期性的上报终端设备上安装的APP,广告服务器根据终端设备上安装的APP与广告服务器上存储的APP,获取两者的APP交集,并对该APP交集进行短编码,将该APP交集进行短编码后的结果和短编码方式发送给终端设备。终端设备请求广告时携带该短编码后的结果和短编码方式,广告服务器根据短编码后的结果和短编码方式,确定用户已经安装的APP,按照每个广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放,从而保证了应用安装状态定向的广告投放的准确性。进一步的,避免了过量的消耗用户流量,降低了广告请求的时延,从而提高了广告的展示率以及具有应用安装状态定向的广告的投放效率,提高用户体验。
可选的,在本申请实例中,作为另一种可能的实现方式,如图13所示的,图13所示的为本申请提供的另一例广告获取的方法300的示意性流程图。如图13所示的,该方法300包括:S310至S350。
S310,终端设备接收用户的操作,该操作用于触发发送广告请求。
S310对应的具体步骤的描述可以参考上述方法100中S150对应步骤的描述,为了简洁,这里不再赘述。
S320,终端设备向广告服务器上的广告服务模块发送该广告请求,该广告请求包括:用户在该终端设备上已安装的APP列表。
S320对应的具体步骤的描述可以参考上述方法100中S110对应步骤的描述,为了简洁,这里不再赘述。
S330,广告服务器上的广告服务模块根据广告请求,获取用户已经安装APP列表;根据用户已经安装APP列表以及广告的定向需求,确定出符合投放条件的广告。定向需求包括:向已安装的应用程序中投放广告,和/或,向未安装的应用程序中投放广告。
S330对应的具体步骤的描述可以参考上述方法100中S170对应步骤的描述,为了简洁,这里不再赘述。
S340,广告服务器上的广告服务模块向终端设备上的广告SDK模块发送符合投放条件的具有应用安装状态定向的广告。该广告包括定向于安装某个APP的广告,和/或,定向未安装某个APP的广告。
S350,终端设备接收到广告信息后,便可以向用户显示广告信息。
S340和S350对应的具体步骤的描述可以参考上述方法100中S180和S190对应步骤的描述,为了简洁,这里不再赘述。
本申请提供的广告获取的方法,通过用户上报终端设备上安装的APP,广告服务器根据用户已经安装的APP,按照广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放,从而保证了应用安装状态定向的广告投放的准确性,提高了具有应用安装状态定向的广告的投放效率,提高用户体验。
可选的,在本申请实例中,作为另一种可能的实现方式,如图14所示的,图14所示的为本申请提供的另一例广告获取的方法400的示意性流程图。如图14所示的,该方法400包括:S409至S460。
S409,终端设备上的广告SDK模块将该终端设备上已安装的APP进行短编码。
其中,终端设备对APP进行短编码的方式和过程可以参考方法200中的S221中的描述,为了简洁,这里不再赘述。
可选的,在S409中,终端设备可以在每次开机后,或者每次检测到有新的APP下载安装后,或者周期性的(例如,每隔一天或者两天等)将该终端设备上已安装的APP进行短编码。本申请实施例在此不作限制。
S410,终端设备接收用户的操作,该操作用于触发发送广告请求。
其中,S410具体过程可以参考方法100中的S150中的描述,为了简洁,这里不再赘述。
S420,终端设备向广告服务器上的广告服务器上的广告服务模块发送广告请求,该广告请求包括:短编码后已安装的APP以及短编码方式。
其中,该广告请求具体的发送形式以及携带的具体参数的示例可以参考方法220中S260中的描述,为了简洁,这里不再赘述。
S430,广告服务器上的广告模块根据短编码后已安装的APP以及短编码方式,获取用户已经安装APP列表。
在S430中,广告服务器上的广告服务模块首先根据短编码方式的标识,确定出相应的解码方式,然后根据解码方式,对短编码后的结果进行解码,最终确定出的用户 已经安装APP列表。
其中,S430具体过程可以参考方法200中的S270中的描述,为了简洁,这里不再赘述。
S440,广告服务器上的广告模块根据用户已经安装APP列表以及广告的定向需求,确定出符合投放条件的广告。定向需求包括:向已安装的应用程序中投放广告,和/或,向未安装的应用程序中投放广告。
S450,广告服务器上的广告服务模块向终端设备上的广告SDK模块发送符合投放条件的具有应用安装状态定向的广告。该广告包括定向于安装某个APP的广告,和/或,定向未安装某个APP的广告。
S460,终端设备接收到广告信息后,便可以向用户显示广告信息。
其中,S440至S460对应的具体步骤的描述可以参考上述方法200中S280、S290以及S291中对应步骤的描述,为了简洁,这里不再赘述。
可选的,在S409之前,广告服务器还可以和终端设备之间进行协商,确定短编码方式以及短编码方式的标识,使得终端设备和广告服务器对短编码方式以及短编码方式的标识的理解一致,以便于在S430中广告服务器正确的进行解码。
本申请提供的广告获取的方法,通过将终端设备上安装的APP进行短编码,终端设备请求广告时携带该短编码后的结果和短编码方式。广告服务器根据短编码后的结果和短编码方式,确定用户已经安装的APP列表。按照每个广告的APP安装状态定向条件,确定出符合定向条件的广告进行投放。实现了无论用户发送的广告请求中是否携带广告跟踪标识,均可以保证应用安装状态定向准确,从而保证了应用安装状态定向的广告投放的准确性,并且,还会降低用户的广告请求的时延,从而提高广告的展示率提高应用安装状态定向的广告的投放效率,提高用户体验。
应理解,上述只是为了帮助本领域技术人员更好地理解本申请实施例,而非要限制本申请实施例的范围。本领域技术人员根据所给出的上述示例,显然可以进行各种等价的修改或变化,例如,上述方法100至方法400中某些步骤可以不必须的,或者可以新加入某些步骤等。或者上述任意两种或者任意多种实施例的组合。这样的修改、变化或者组合后的方案也落入本申请实施例的范围内。
还应理解,上述各个实施例中的参数代码仅仅是示例性的,不应该本申请实施例中的信息携带的参数代码格式产生任何限制。在本申请另一些实施例中,本申请实施例中的信息携带的参数代码格式还可以为其他格式等。本申请实施例在此不作限制。
还应理解,本申请实施例中的方式、情况、类别以及实施例的划分仅是为了描述的方便,不应构成特别的限定,各种方式、类别、情况以及实施例中的特征在不矛盾的情况下可以相结合。
还应理解,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
还应理解,上文对本申请实施例的描述着重于强调各个实施例之间的不同之处,未提到的相同或相似之处可以互相参考,为了简洁,这里不再赘述。
还应理解,本申请实施例中,“预定义”可以通过在设备(中预先保存相应的代码、表格或其他可用于指示相关信息的方式来实现,本申请对于其具体的实现方式不做限定。
上述结合图1-图14描述了本申请实施例提供的广告获取的方法的实施例,下面描述本申请实施例提供的相关设备。
本实施例可以根据上述方法,对各个设备(包括上述的终端设备和广告服务器)进行功能模块的划分。例如,可以对应各个功能,划分为各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
需要说明的是,上述方法实施例涉及的各步骤的相关内容,均可以援引到对应功能模块的功能描述,此处不再赘述。
本申请实施例提供的通信装置(上述的终端设备或者广告服务器),用于执行上述广告获取的方法,因此可以达到与上述实现方法相同的效果。在采用集成的单元的情况下,通信装置可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对通信装置的动作进行控制管理。例如,可以用于支持通信装置执行处理单元执行的步骤。存储模块可以用于支持存储程序代码和数据等。通信模块,可以用于支持通信装置与其他设备的通信。
其中,处理模块可以是处理器或控制器。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,DSP)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片、Wi-Fi芯片等与其他电子设备交互的设备。
示例性地,图15示出了本申请提供的一例通信装置500的硬件结构示意图,该通信装置500可以为上述的终端设备或者广告服务器。如图15所示,通信装置500可包括处理器510,外部存储器接口520,内部存储器521,通用串行总线(universal serial bus,USB)接口530,充电管理模块540,电源管理模块541,电池542,天线1,天线2,无线通信模块550等。
可以理解的是,本申请实施例示意的结构并不构成对通信装置500的具体限定。在本申请另一些实施例中,通信装置500可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
例如,通信装置500为终端设备时,该通信装置还可以包括显示屏。
处理器510可以包括一个或多个处理单元。例如:处理器510可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的部件,也可以集成在一个或多个处理器中。在一些实施例中,通信装置500也可以包括一个或多个 处理器510。其中,控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
在一些实施例中,处理器510可以包括一个或多个接口。接口可以包括集成电路间(inter-integrated circuit,I2C)接口,集成电路间音频(integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,SIM卡接口,和/或USB接口等。其中,USB接口530是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口2530可以用于连接充电器为通信装置500充电,也可以用于通信装置500与外围设备之间传输数据。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对通信装置500的结构限定。在本申请另一些实施例中,通信装置500也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
通信装置500的无线通信功能可以通过天线1,天线2以及无线通信模块550等实现。
无线通信模块550可以提供应用在通信装置500上的包括Wi-Fi(包括Wi-Fi感知和Wi-Fi AP),蓝牙(bluetooth,BT),无线数传模块(例如,433MHz,868MHz,515MHz)等无线通信的解决方案。无线通信模块550可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块550经由天线1或者天线2(或者,天线1和天线2)接收电磁波,将电磁波信号滤波以及调频处理,将处理后的信号发送到处理器510。无线通信模块550还可以从处理器510接收待发送的信号,对其进行调频,放大,经天线1或者天线2转为电磁波辐射出去。
外部存储器接口520可以用于连接外部存储卡,例如Micro SD卡,实现扩展通信装置500的存储能力。外部存储卡通过外部存储器接口520与处理器510通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器521可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器510可以通过运行存储在内部存储器521的上述指令,从而使得通信装置500执行本申请一些实施例中所提供的广告获取的方法,以及各种应用以及数据处理等。内部存储器521可以包括代码存储区和数据存储区。其中,代码存储区可存储操作系统。数据存储区可存储通信装置500使用过程中所创建的数据等。此外,内部存储器521可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储部件,闪存部件,通用闪存存储器(universal flash storage,UFS)等。在一些实施例中,处理器510可以通过运行存储在内部存储器521的指令,和/或存储在设置于处理器510中的存储器的指令,来使得通信装置500执行本申请实施例中所提供的广告获取的方法,以及其他应用及数据处理。
应理解,通信装置500执行上述相应步骤的具体过程请参照前文中结合图5、图12、图13和图14中各个实施例中描述终端设备或者广告服务器执行步骤的相关描述,为了简洁,这里不加赘述。
图16示出了本申请实施例的提供的另一例通信装置600的示意性框图,该通信装置600可以对应上述方法100至方法400中的各个实施例中描述的终端设备或者广告服务器。 也可以是应用于终端设备或者广告服务器的芯片或组件,并且,该通信装置600中的各模块或单元分别用于执行上述方法100至方法400中的各个实施例中描述的终端设备或者广告服务器所执行的各动作或处理过程,如图16所示,该通信装置600可以包括:处理单元610和通信单元620。可选的,该通信装置600还可以包括存储单元630。
应理解,通信装置600中各单元执行上述相应步骤的具体过程请参照前文中结合图5、图12、图13和图14中各个实施例中描述终端设备或者广告服务器执行步骤的相关描述,为了简洁,这里不加赘述。
可选的,通信单元620可以包括接收单元(模块)和发送单元(模块),用于执行前述各个方法实施例中终端设备或者广告服务器接收信息和发送信息的步骤。存储单元1300用于存储处理单元610和通信单元620执行的指令。处理单元610、通信单元620和存储单元630通信连接,存储单元630存储指令,处理单元610用于执行存储单元存储的指令,通信单元620用于在处理单元610的驱动下执行具体的信号收发。
应理解,通信单元620可以是收发器、输入/输出接口或接口电路等,例如可以由图15所示实施例中的无线通信模块550实现。存储单元可以是存储器,例如,可以由图15所示实施例中的外部存储器接口520和内部存储器521实现。处理单元610可以由图15所示实施例中处理器510,或者可以由处理器510、以及外部存储器接口520、内部存储器521实现。
还应理解,图16所示的通信装置600可以为终端设备或者广告服务器,或者,终端设备或者广告服务器可以包括图16所示的通信装置600。
还应理解,以上装置中单元的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且装置中的单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元以软件通过处理元件调用的形式实现,部分单元以硬件的形式实现。例如,各个单元可以为单独设立的处理元件,也可以集成在装置的某一个芯片中实现,此外,也可以以程序的形式存储于存储器中,由装置的某一个处理元件调用并执行该单元的功能。这里该处理元件又可以称为处理器,可以是一种具有信号处理能力的集成电路。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路实现或者以软件通过处理元件调用的形式实现。在一个例子中,以上任一装置中的单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(application specific integrated circuit,ASIC),或,一个或多个数字信号处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA),或这些集成电路形式中至少两种的组合。再如,当装置中的单元可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,CPU)或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
本申请实施例还提供了一种广告系统,该系统包括:上述方法实施例中提供的终端设备和广告服务器,可选的,该系统还可以包括:上述方法实施例中提供的第二中枢设备、第三电子设备、第四电子设备中的至少一个。
本申请实施例还提供了一种计算机可读存储介质,用于存储计算机程序代码,该计算 机程序包括用于执行上述本申请实施例提供的任意一种广告获取的方法的指令。该可读介质可以是只读存储器(read-only memory,ROM)或随机存取存储器(random access memory,RAM),本申请实施例对此不做限制。
本申请还提供了一种计算机程序产品,该计算机程序产品包括指令,当该指令被执行时,以使得该终端设备和广告服务器执行对应于上述方法中的对应的操作。
本申请实施例还提供了一种位于通信装置中的芯片,该芯片包括:处理单元和通信单元,该处理单元,例如可以是处理器,该通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行计算机指令,以使所述通信装置执行上述本申请实施例提供的任一种广告获取的方法。
可选地,该计算机指令被存储在存储单元中。
可选地,该存储单元为该芯片内的存储单元,如寄存器、缓存等,该存储单元还可以是该终端内的位于该芯片外部的存储单元,如ROM或可存储静态信息和指令的其他类型的静态存储设备,随机RAM等。其中,上述任一处提到的处理器,可以是一个CPU,微处理器,ASIC,或一个或多个用于控制上述的反馈信息的传输方法的程序执行的集成电路。该处理单元和该存储单元可以解耦,分别设置在不同的物理设备上,通过有线或者无线的方式连接来实现该处理单元和该存储单元的各自的功能,以支持该系统芯片实现上述实施例中的各种功能。或者,该处理单元和该存储器也可以耦合在同一个设备上。
其中,本实施例提供的通信装置、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是ROM、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是RAM,其用作外部高速缓存。RAM有多种不同的类型,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
在本申请中可能出现的对各种消息/信息/设备/网元/系统/装置/动作/操作/流程/概念等各类客体进行了赋名,可以理解的是,这些具体的名称并不构成对相关客体的限定,所赋名称可随着场景,语境或者使用习惯等因素而变更,对本申请中技术术语的技术含义的理解,应主要从其在技术方案中所体现/执行的功能和技术效果来确定。
在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以 硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请的实施例中的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器等数据存储设备。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (24)

  1. 一种广告获取的方法,其特征在于,所述方法包括:
    终端设备向广告服务器发送广告请求,所述广告请求包括应用程序集合的信息,所述应用程序集合包括所述终端设备已经安装的应用程序中的一部分或者全部;
    所述终端设备接收所述广告服务器发送的响应于所述广告请求的广告信息,所述广告信息包括第一广告信息和/或第二广告信息,其中,所述第一广告的信息与第一应用程序相关联,所述应用程序集合包括所述第一应用程序,所述第二广告信息指示所述终端设备安装第二应用程序,所述应用程序集合不包括所述第二应用程序。
  2. 根据权利要求1所述的方法,其特征在于,所述应用程序集合的信息包括:应用程序的包名。
  3. 根据权利要求1所述的方法,其特征在于,所述应用程序集合的信息包括:应用程序的包名分别对应的短编码结果以及短编码方式的标识。
  4. 根据权利要求1至3中任一项所述的方法,其特征在于,在所述终端设备向广告服务器发送广告请求之前,所述方法还包括:
    所述终端设备向所述广告服务器发送查询请求,所述查询请求包括所述终端设备已经安装的应用程序;
    所述终端设备接收所述广告服务器发送的查询响应信息,所述查询响应信息包括:所述应用程序集合的信息。
  5. 根据权利要求4所述的方法,其特征在于,所述应用程序集合为所述终端设备已经安装的应用程序与所述广告服务器存储的应用程序的交集,所述广告服务器存储的应用程序与所述广告服务器需要投放的广告关联。
  6. 根据权利要求1至5中任一项所述的方法,其特征在于,所述第一广告信息包括:第一广告素材的下载地址、所述第一应用程序的包名以及第一页面的地址链接,所述第一页面为所述第一应用程序的页面;
    和/或,
    所述第二广告信息包括:第二广告素材的下载地址以及所述第二应用程序的包名。
  7. 根据权利要求6所述的方法,其特征在于,所述方法还包括:
    所述终端设备显示第一界面,所述第一界面包括所述第一广告的广告素材;
    所述终端设备检测作用于所述第一广告的第一操作;
    当检测到所述第一操作时,所述终端设备在所述第一应用程序中显示所述第一页面。
  8. 根据权利要求6或7所述的方法,其特征在于,所述方法还包括:
    所述终端设备显示第二界面,所述第二界面包括所述第二广告素材;
    所述终端设备检测作用于所述第二广告的第二操作;
    当检测到所述第二操作时,所述终端设备显示所述第二应用程序的下载页面。
  9. 根据权利要求1至8中任一项所述的方法,其特征在于,在所述终端设备向广告服务器发送广告请求之前,所述方法还包括:
    所述终端设备接收用户的第三操作,所述第三操作用于触发所述终端设备发送所述广告请求,所述第三操作包括:用于打开应用程序的操作、或者点击应用程序中的 链接操作。
  10. 一种广告获取的方法,所述方法应用于广告系统中,所述系统包括终端设备和广告服务器,其特征在于,所述方法包括:
    所述终端设备向所述广告服务器发送广告请求,所述广告请求包括应用程序集合的信息,所述应用程序集合包括所述终端设备已经安装的应用程序中的一部分或者全部;
    所述广告服务器根据所述广告请求以及有应用安装定向的广告,确定符合投放条件的广告,所述有应用安装定向的广告包括:定向于已经安装的应用程序的广告,和/或,定向于未安装的应用程序的广告;
    所述广告服务器向所述终端设备发送响应于所述广告请求的广告信息,所述广告信息包括第一广告信息和/或第二广告信息,其中,所述第一广告的信息与第一应用程序相关联,所述应用程序集合包括所述第一应用程序,所述第二广告信息指示所述终端设备安装第二应用程序,所述应用程序集合不包括所述第二应用程序。
  11. 根据权利要求10所述的方法,其特征在于,所述应用程序集合的信息包括:应用程序的包名。
  12. 根据权利要求10所述的方法,其特征在于,所述应用程序集合的信息包括:应用程序的包名分别对应的短编码结果以及短编码方式的标识。
  13. 根据权利要求10至12中任一项所述的方法,其特征在于,在所述终端设备向所述广告服务器发送广告请求之前,所述方法还包括:
    所述终端设备向所述广告服务器发送查询请求,所述查询请求包括所述终端设备已经安装的应用程序;
    所述广告服务器根据所述终端设备已经安装的应用程序和所述广告服务器存储的应用程序,确定所述应用程序集合;
    所述广告服务器根据所述应用程序集合,获取所述应用程序集合的信息;
    所述广告服务器向所述终端设备发送所述应用程序集合的信息。
  14. 根据权利要求13所述的方法,其特征在于,所述应用程序集合为所述终端设备已经安装的应用程序与所述广告服务器存储的应用程序的交集,所述广告服务器存储的应用程序与所述广告服务器需要投放的广告关联。
  15. 根据权利要求13或14所述的方法,其特征在于,在所述应用程序集合的信息包括应用程序的包名分别对应的短编码结果以及短编码方式的标识的情况下,所述广告服务器根据所述应用程序集合,获取所述应用程序集合的信息,包括:
    所述广告服务器根据所述应用程序集合,利用短编码方式对所述应用程序集合包括的应用程序的包名分别进行短编码,得到应用程序的包名分别对应的短编码结果;
    所述广告服务器根据所述应用程序的包名分别对应的短编码结果以及所述短编码方式,获取所述应用程序集合的信息。
  16. 根据权利要求12所述的方法,其特征在于,在所述广告服务器确定符合投放条件的广告之前,所述方法还包括:
    所述广告服务器根据所述短编码方式的标识,确定对应的解码方式;
    所述广告服务根据所述解码方式,对所述应用程序的包名分别对应的短编码结果 进行解码,得到所述应用程序集合。
  17. 根据权利要求10至16中任一项所述的方法,其特征在于,所述第一广告信息包括:广告素材的下载地址、所述第一应用程序的包名以及第一页面的地址链接,所述第一页面为所述第一应用程序的页面;
    和/或,
    所述第二广告信息包括:第二广告素材的下载地址以及所述第二应用程序的包名。
  18. 根据权利要求17所述的方法,其特征在于,所述方法还包括:
    所述终端设备显示第一界面,所述第一界面包括所述第一广告的广告素材;
    所述终端设备检测作用于所述第一广告的第一操作;
    当检测到所述第一操作时,所述终端设备在所述第一应用程序中显示所述第一页面。
  19. 根据权利要求17或18所述的方法,其特征在于,所述方法还包括:
    所述终端设备显示第二界面,所述第二界面包括所述第二广告素材;
    所述终端设备检测作用于所述第二广告的第二操作;
    当检测到所述第二操作时,所述终端设备显示所述第二应用程序的下载页面。
  20. 根据权利要求10至19中任一项所述的方法,其特征在于,在所述终端设备向广告服务器发送广告请求之前,所述方法还包括:
    所述终端设备接收用户的第三操作,所述第三操作用于触发所述终端设备发送所述广告请求,所述第三操作包括:用于打开应用程序的操作、或者点击应用程序中的链接操作。
  21. 一种终端设备,其特征在于,包括:处理器及存储器;所述处理器和存储器耦合,所述存储器存储有程序指令,当所述存储器存储的程序指令被所述处理器执行时执行如权利要求1至9中任一项所述的方法。
  22. 一种广告系统,所述系统包括终端设备和广告服务器,其特征在于,所述终端设备用于执行如权利要求10至20中任一项所述的方法中由所述终端设备执行的步骤;所述广告服务器用于执行如权利要求10至20中任一项所述的方法中由所述广告服务器执行的步骤。
  23. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储了计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1至9中任一项所述的方法,或者执行如权利要求10至20中任一项所述的方法。
  24. 一种芯片,其特征在于,包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片的通信设备执行如权利要求1至9中任一项所述的方法,或者,执行如权利要求10至20中任一项所述的方法。
PCT/CN2022/085371 2021-04-30 2022-04-06 广告获取的方法及其相关设备 WO2022228063A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP22794534.2A EP4318358A1 (en) 2021-04-30 2022-04-06 Advertisement obtaining method and related device thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110541452.0A CN115271776A (zh) 2021-04-30 2021-04-30 广告获取的方法及其相关设备
CN202110541452.0 2021-04-30

Publications (1)

Publication Number Publication Date
WO2022228063A1 true WO2022228063A1 (zh) 2022-11-03

Family

ID=83746194

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/085371 WO2022228063A1 (zh) 2021-04-30 2022-04-06 广告获取的方法及其相关设备

Country Status (3)

Country Link
EP (1) EP4318358A1 (zh)
CN (1) CN115271776A (zh)
WO (1) WO2022228063A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116071113A (zh) * 2023-04-06 2023-05-05 深圳市东信时代信息技术有限公司 广告投放方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160162939A1 (en) * 2014-12-08 2016-06-09 Vungle, Inc. Systems and methods for providing advertising services to devices with a customized adaptive user experience
CN107846511A (zh) * 2017-10-30 2018-03-27 深圳市金立通信设备有限公司 一种接入移动广告的方法、终端及计算机可读存储介质
CN108074137A (zh) * 2018-01-04 2018-05-25 北京奇虎科技有限公司 移动终端及广告投放方法及其控制方法、装置
CN110827056A (zh) * 2019-09-18 2020-02-21 华为技术有限公司 一种广告投放方法、终端设备和服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160162939A1 (en) * 2014-12-08 2016-06-09 Vungle, Inc. Systems and methods for providing advertising services to devices with a customized adaptive user experience
CN107846511A (zh) * 2017-10-30 2018-03-27 深圳市金立通信设备有限公司 一种接入移动广告的方法、终端及计算机可读存储介质
CN108074137A (zh) * 2018-01-04 2018-05-25 北京奇虎科技有限公司 移动终端及广告投放方法及其控制方法、装置
CN110827056A (zh) * 2019-09-18 2020-02-21 华为技术有限公司 一种广告投放方法、终端设备和服务器
CN112232848A (zh) * 2019-09-18 2021-01-15 华为技术有限公司 一种广告投放方法、终端设备和服务器

Also Published As

Publication number Publication date
EP4318358A1 (en) 2024-02-07
CN115271776A (zh) 2022-11-01

Similar Documents

Publication Publication Date Title
US10063510B2 (en) Techniques to share and remix media through a messaging system
JP6219296B2 (ja) ウェブページからのアプリケーションの起動
US7680899B1 (en) Seamless retrieval of non-standard items for a mobile device
US9111286B2 (en) Multiple actions and icons for mobile advertising
JP6270066B2 (ja) ブランドの自己識別、およびジェネリック電子デバイスにおけるブランディング済ファームウェアのインストール
US8954041B1 (en) System and method for ID platform
US20090198579A1 (en) Keyword tracking for microtargeting of mobile advertising
US20150249720A1 (en) In-app content channel
US9930161B1 (en) System and method of caching targeted internet protocol (IP) notifications to mobile communication devices
WO2018133289A1 (zh) 一种广告展示方法及终端
WO2022228063A1 (zh) 广告获取的方法及其相关设备
CN110827056B (zh) 一种广告投放方法、终端设备和服务器
US9508090B1 (en) End user participation in mobile advertisement
EP3076608B1 (en) Techniques to share and remix media through a messaging system
KR101599497B1 (ko) 복수의 어플리케이션의 컨텐츠를 통합하여 이용하기 위한 사용자 단말 및 컨텐츠 통합 서비스 방법
CN113810857B (zh) 一种信标消息处理方法以及系统
KR20130089900A (ko) 인터넷 모바일 기기에서의 광고 소재 동시 처리 방법
CN113312572A (zh) 一种资源处理方法、装置、存储介质及电子设备
KR101013820B1 (ko) 다중 디스플레이 기능을 갖는 이동통신 단말기를 이용한 광고 제공 방법
WO2023066176A1 (zh) 开屏广告显示方法及相关设备
WO2022228109A1 (zh) 广告显示方法及相关设备
WO2022179267A1 (zh) 广告的展示方法、装置及系统
WO2024067004A1 (zh) 推广方法、电子设备及系统
WO2023160512A1 (zh) 应用程序推广方法、相关装置及通信系统
EP2385490A1 (en) On-line advertisment

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: 22794534

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18557832

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2022794534

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022794534

Country of ref document: EP

Effective date: 20231102

NENP Non-entry into the national phase

Ref country code: DE