Eventi SDK (Java)
Descrizione
Quando si inizializza l'SDK, è possibile fornire un oggetto OnDeviceDecisioningHandler
facoltativo sull'oggetto ClientConfig
. Può essere utilizzato per abbonarsi a vari eventi che si verificano all'interno dell'SDK. Ad esempio, l'evento onDeviceDecisioningReady
può essere utilizzato con una funzione di callback che verrà richiamata quando l'SDK sarà pronto per le chiamate ai metodi.
Eventi
L'oggetto OnDeviceDecisioningHandler
contiene i seguenti callback, chiamati per determinati eventi:
Nome
Argomenti
Descrizione
onDeviceDecisioningReady
None (Nessuno)
Chiamata eseguita solo una volta la prima volta che il client è pronto per on-device decisioning
artifactDownloadSucceeded
byte[] contenuto del file di artefatto
Chiamata eseguita ogni volta che viene scaricato un artefatto on-device decisioning
artifactDownloadFailed
Eccezione
Chiamata eseguita ogni volta che non è possibile scaricare un artefatto on-device decisioning
Esempio
Eventi SDK
ClientConfig clientConfig = ClientConfig.builder()
.client("acmeclient")
.organizationId("1234567890@AdobeOrg")
.defaultDecisioningMethod(DecisioningMethod.ON_DEVICE)
.onDeviceDecisioningHandler(new OnDeviceDecisioningHandler() {
@Override
public void onDeviceDecisioningReady() {
// make getOffers requests
makeTargetRequests();
}
@Override
public void artifactDownloadSucceeded(byte[] artifactData) {
System.out.println("The artifact was successfully downloaded.");
}
@Override
public void artifactDownloadFailed(TargetClientException e) {
System.out.println("The artifact failed to download.");
}
}).build();
TargetClient targetJavaClient = TargetClient.create(clientConfig);
void makeTargetRequests() {
List<MboxRequest> mboxRequests = new ArrayList<>();
mboxRequests.add((MboxRequest) new MboxRequest().name("a1-serverside-ab").index(1));
TargetDeliveryRequest targetDeliveryRequest = TargetDeliveryRequest.builder()
.context(new Context().channel(ChannelType.WEB))
.execute(new ExecuteRequest().setMboxes(mboxRequests))
.build();
TargetDeliveryResponse targetResponse = targetJavaClient.getOffers(targetDeliveryRequest);
}
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3