Gli eventi personalizzati ti consentono di aggiungere la mediazione a cascata per una rete pubblicitaria diversa rete pubblicitaria supportata. A tal fine, implementa un adattatore evento personalizzato per la rete pubblicitaria da integrare.
Prerequisiti
Prima di poter creare eventi personalizzati, devi integrare uno degli seguente formato dell'annuncio nella tua app:
Creare un evento personalizzato nella UI
È necessario prima creare un evento personalizzato nell'UI di Ad Manager. Consulta le istruzioni riportate in Creare e gestire i gruppi di rendimento.
Devi fornire quanto segue:
- Nome corso
Il nome completo della classe che implementa l'adattatore di eventi personalizzati, ad esempio
SampleCustomEvent
; oppure, se la classe è implementata in Swift,MediationExample.SampleCustomEventSwift
.Il nome destinazione è obbligatorio se hai più destinazioni nel progetto o se il nome del progetto sia diverso da quello della destinazione. Con il nome della destinazione, sarebbe simile a questo:
appName_targetName.className
. Inoltre, ricorda che al posto di eventuali caratteri non alfanumerici, come trattini e trattini bassi. Esempio.- Etichetta
Un nome univoco che definisce l'origine dell'annuncio.
- Parametro
Un argomento stringa facoltativo passato all'adattatore di eventi personalizzati.
Implementare GADMediationAdapter
Il primo passaggio per creare un evento personalizzato è implementare
Protocollo GADMediationAdapter
come mostrato dalla classe SampleCustomEvent
nel nostro esempio.
È responsabilità di questa classe ricevere i messaggi da Ad Manager e delegare la responsabilità di creare il formato dell'annuncio corretto.
Inizializza l'adattatore
All'inizializzazione dell'SDK Google Mobile Ads,
setUpWithConfiguration:completionHandler:
viene richiamato su tutti gli adattatori di terze parti supportati e gli eventi personalizzati configurati
per l'app nell'interfaccia utente di Ad Manager. Utilizza questo metodo per eseguire eventuali configurazioni o inizializzazioni necessarie sull'SDK di terze parti richiesto per l'evento personalizzato.
Swift
import GoogleMobileAds
class SampleCustomEvent: NSObject, GADMediationAdapter {
static func setUpWith(
_ configuration: GADMediationServerConfiguration,
completionHandler: @escaping GADMediationAdapterSetUpCompletionBlock
) {
// This is where you will initialize the SDK that this custom event is built
// for. Upon finishing the SDK initialization, call the completion handler
// with success.
completionHandler(nil)
}
}
Objective-C
#import "SampleCustomEvent.h"
@implementation SampleCustomEvent
+ (void)setUpWithConfiguration:(nonnull GADMediationServerConfiguration *)configuration
completionHandler:(nonnull GADMediationAdapterSetUpCompletionBlock)completionHandler {
// This is where you initialize the SDK that this custom event is built
// for. Upon finishing the SDK initialization, call the completion handler
// with success.
completionHandler(nil);
}
Numeri di versione del report
Tutti gli eventi personalizzati devono segnalare all'SDK Google Mobile Ads sia la versione di
l'adattatore eventi personalizzati e la versione dell'SDK di terze parti
con cui si interfacciano gli eventi personalizzati. Le versioni sono segnalate come
GADVersionNumber
oggetti:
Swift
static func adSDKVersion() -> GADVersionNumber {
let versionComponents = String(SampleSDKVersion).components(
separatedBy: ".")
if versionComponents.count >= 3 {
let majorVersion = Int(versionComponents[0]) ?? 0
let minorVersion = Int(versionComponents[1]) ?? 0
let patchVersion = Int(versionComponents[2]) ?? 0
return GADVersionNumber(
majorVersion: majorVersion, minorVersion: minorVersion, patchVersion: patchVersion)
}
return GADVersionNumber()
}
static func adapterVersion() -> GADVersionNumber {
let versionComponents = String(SampleAdSDK.SampleAdSDKVersionNumber).components(
separatedBy: ".")
var version = GADVersionNumber()
if versionComponents.count == 4 {
version.majorVersion = Int(versionComponents[0]) ?? 0
version.minorVersion = Int(versionComponents[1]) ?? 0
version.patchVersion = Int(versionComponents[2]) * 100 + Int(versionComponents[3])
}
return version
}
Objective-C
+ (GADVersionNumber)adSDKVersion {
NSArray *versionComponents =
[SampleSDKVersion componentsSeparatedByString:@"."];
GADVersionNumber version = {0};
if (versionComponents.count >= 3) {
version.majorVersion = [versionComponents[0] integerValue];
version.minorVersion = [versionComponents[1] integerValue];
version.patchVersion = [versionComponents[2] integerValue];
}
return version;
}
+ (GADVersionNumber)adapterVersion {
NSArray *versionComponents =
[SampleCustomEventAdapterVersion componentsSeparatedByString:@"."];
GADVersionNumber version = {0};
if (versionComponents.count == 4) {
version.majorVersion = [versionComponents[0] integerValue];
version.minorVersion = [versionComponents[1] integerValue];
version.patchVersion = [versionComponents[2] integerValue] * 100 +
[versionComponents[3] integerValue];
}
return version;
}
Richiedi annuncio
Per richiedere un annuncio, consulta le istruzioni specifiche per il formato dell'annuncio: