Sprache

AdSelectionManager.ReportImpression Methode

Definition

Benachrichtigt den Dienst darüber, dass es einen neuen Eindruck gibt, der für die anzeige angezeigt wird, die durch die durch adSelectionIddie Anzeigenauswahl identifizierte Anzeige ausgewählt wird.

[Android.Runtime.Register("reportImpression", "(Landroid/adservices/adselection/ReportImpressionRequest;Ljava/util/concurrent/Executor;Landroid/os/OutcomeReceiver;)V", "GetReportImpression_Landroid_adservices_adselection_ReportImpressionRequest_Ljava_util_concurrent_Executor_Landroid_os_OutcomeReceiver_Handler", ApiSince=34)]
public virtual void ReportImpression(Android.AdServices.AdSelection.ReportImpressionRequest request, Java.Util.Concurrent.IExecutor executor, Android.OS.IOutcomeReceiver receiver);
[<Android.Runtime.Register("reportImpression", "(Landroid/adservices/adselection/ReportImpressionRequest;Ljava/util/concurrent/Executor;Landroid/os/OutcomeReceiver;)V", "GetReportImpression_Landroid_adservices_adselection_ReportImpressionRequest_Ljava_util_concurrent_Executor_Landroid_os_OutcomeReceiver_Handler", ApiSince=34)>]
abstract member ReportImpression : Android.AdServices.AdSelection.ReportImpressionRequest * Java.Util.Concurrent.IExecutor * Android.OS.IOutcomeReceiver -> unit
override this.ReportImpression : Android.AdServices.AdSelection.ReportImpressionRequest * Java.Util.Concurrent.IExecutor * Android.OS.IOutcomeReceiver -> unit

Parameter

executor
IExecutor
receiver
IOutcomeReceiver
Attribute

Hinweise

Benachrichtigt den Dienst darüber, dass es einen neuen Eindruck gibt, der für die anzeige angezeigt wird, die durch die durch adSelectionIddie Anzeigenauswahl identifizierte Anzeige ausgewählt wird. Es gibt keine Garantie dafür, wann der Eindruck gemeldet wird. Der Eindruck konnte verzögert werden, und Berichte könnten in batchweise erstellt werden.

Um die Url für die Erfolgreiche Verkäuferberichterstattung zu berechnen, ruft der Dienst die JavaScript-Logik des Verkäufers aus der AdSelectionConfig#getDecisionLogicUri() gefundenen Adresse ReportImpressionRequest#getAdSelectionConfig()ab. Anschließend führt der Dienst eine der Funktionen aus, die im Verkäufer JS aufgerufen reportResultwerden, wobei On-Device-Signale sowie ReportImpressionRequest#getAdSelectionConfig() Eingabeparameter bereitgestellt werden.

Die Funktionsdefinition lautet reportResult :

function reportResult(ad_selection_config, render_url, bid, contextual_signals) { return { 'status': status, 'results': {'signals_for_buyer': signals_for_buyer, 'reporting_url': reporting_url}; }}

Zum Berechnen der URL des gewinnenden Käuferberichts ruft der Dienst die JavaScript-Logik des Gewinners ab, die über den Käufer android.adservices.customaudience.CustomAudience#getBiddingLogicUri()abgerufen wird. Anschließend führt der Dienst eine der Funktionen aus, die im Käufer JS gefunden reportWinwerden, die On-Device-Signale, signals_for_buyer berechnet von reportResultund bestimmte Felder als ReportImpressionRequest#getAdSelectionConfig() Eingabeparameter bereitstellt.

Die Funktionsdefinition lautet reportWin :

function reportWin(ad_selection_signals, per_buyer_signals, signals_for_buyer, contextual_signals, custom_audience_reporting_signals) { return {'status': 0, 'results': {'reporting_url': reporting_url}; }}

Darüber hinaus haben Käufer und Verkäufer die Möglichkeit, sich zu registrieren, um Berichte zu bestimmten Anzeigenereignissen zu erhalten. Dazu können sie die bereitgestellte registerAdBeacon Plattform innerhalb reportWin und reportResult für Käufer bzw. Verkäufer aufrufen.

Die Funktionsdefinition lautet registerBeacon :

function registerAdBeacon(beacons), wobei beacons es sich um ein Diktat von Zeichenfolgenpaaren handelt.

Für jedes Anzeigenereignis, für das ein Käufer/Verkäufer an Berichten interessiert ist, würden sie ein event_key: event_reporting_uri Paar zum beacons Diktieren hinzufügen, wobei event_key es sich um einen Bezeichner für dieses bestimmte Ereignis handelt. Dies event_key sollte übereinstimmen ReportEventRequest#getKey() , wenn das SDK aufgerufen wird #reportEvent. Darüber hinaus sollte jeder event_reporting_uri ordnungsgemäß in eine android.net.Uri. Dies wird gemeldet, wenn das SDK aufgerufen #reportEventwirdandroid.net.Uri.

Wenn der Käufer/Verkäufer alle Paarungen hinzugefügt hat, für die er Ereignisse erhalten möchte, kann er aufrufen registerAdBeacon(beacons), wo beacons der Name des Diktats ist, dem sie die Paare hinzugefügt haben.

registerAdBeacon TypeError löst eine in diesen Situationen aus:

<ol><li>registerAdBeaconwird mehrmals aufgerufen. Wenn dieser Fehler in reportWin/reportResult erfasst wird, wird der ursprüngliche Satz von Paarungen registriert <li>registerAdBeacon nicht genau 1 Dict-Argument. <li>Der Inhalt des 1-Diktatarguments sind nicht alle String: String Paarungen. </ol>

Die Ausgabe wird von der receiver, die entweder eine leere Object für eine erfolgreiche Ausführung zurückgibt, oder ein Exception enthält den Typ der ausgelösten Ausnahme und die entsprechende Fehlermeldung.

Wenn der IllegalArgumentException Fehler ausgelöst wird, wird es durch ein ungültiges Eingabeargument verursacht, das die API empfangen hat, um den Eindruck zu melden.

Wenn der IllegalStateException Fehler mit der Fehlermeldung "Fehler von AdSelection-Diensten" ausgelöst wird, wird dies durch einen internen Fehler des Anzeigenauswahldiensts verursacht.

Wenn der LimitExceededException Fehler ausgelöst wird, wird dies verursacht, wenn das aufrufende Paket die zulässigen Ratengrenzwerte überschreitet und gedrosselt wird.

Wenn der SecurityException Fehler ausgelöst wird, wird dies verursacht, wenn der Anrufer nicht autorisiert ist oder die Berechtigung nicht angefordert wird.

Aufrufe werden höchstens einmal als Best-Effort-Versuch gemeldet.

Java Dokumentation für android.adservices.adselection.AdSelectionManager.reportImpression(android.adservices.adselection.ReportImpressionRequest, java.util.concurrent.Executor, android.os.OutcomeReceiver<java.lang.Object, java.lang.Exception>).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: