Intégrer avec le sandbox
Avec une intégration sandbox, vous pouvez inclure un indicateur de configuration pour tester dans un environnement sandbox. L'environnement sandbox suit un processus normal d'offres, d'enchères et de correspondance par rapport à votre configuration de production. Bien qu'un environnement sandbox fasse partie de l'environnement de production de Rokt, il ne facture pas les annonceurs et ne génère pas de revenus. Par conséquent, vous pouvez l'utiliser pour les tests d'acceptation avant le déploiement en production.
L'intégration suit exactement les mêmes étapes que dans les exemples précédents, avec un attribut supplémentaire sandbox
requis dans la fonction execute
.
Vous devez supprimer l'attribut sandbox
avant de passer en direct avec votre placement.
Exemple de placement de superposition
Pour exécuter un placement de superposition dans l'environnement sandbox, la liste des attributs transmis à Rokt doit être mise à jour pour inclure "sandbox": "true"
. Cela peut être fait en mettant à jour le code de l'exemple dans la documentation ajout d'un placement de superposition pour inclure ce qui suit :
- Java
- Kotlin
import com.rokt.roktsdk.Rokt
class ConfirmationActivity : Activity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
...
// Inclure tous les attributs appropriés
val attributes = hashMapOf(
Pair("email", "j.smith@example.com"),
Pair("sandbox", "true"),
Pair("firstname", "Jenny"),
Pair("lastname", "Smith"),
Pair("mobile", "(323) 867-5309"),
Pair("postcode", "90210"),
Pair("country", "US"))
Rokt.execute("RoktExperience",
attributes,
object : Rokt.RoktCallback {
override fun onUnload(reason: Rokt.UnloadReasons) {
}
override fun onLoad() {
}
override fun onShouldHideLoadingIndicator() {
}
override fun onShouldShowLoadingIndicator() {
}
}
)
...
}
import com.rokt.roktsdk.Rokt;
class ConfirmationActivity : Activity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
...
Map<String,String> attributes = new HashMap<String, String>();
attributes.put("email", "j.smith@example.com");
attributes.put("sandbox", "true");
attributes.put("firstname", "Jenny");
attributes.put("lastname", "Smith");
attributes.put("mobile", "(323) 867-5309");
attributes.put("postcode", "90210");
attributes.put("country", "US");
Rokt.INSTANCE.execute("RoktExperience",
attributes,
new Rokt.RoktCallback() {
@Override
public void onLoad() {
}
@Override
public void onUnload(Rokt.UnloadReasons unloadReasons) {
}
@Override
public void onShouldHideLoadingIndicator() {
}
@Override
public void onShouldShowLoadingIndicator() {
}
}
)
...
}
}
Exemple de placement intégré
Pour exécuter un placement intégré dans l'environnement sandbox, vous devez mettre à jour la liste des attributs transmis à Rokt pour inclure "sandbox": "true"
. Cela peut être fait en mettant à jour le code d'exemple de la documentation ajout d'un placement intégré pour inclure ce qui suit :
- Java
- Kotlin
import com.rokt.roktsdk.Widget
import com.rokt.roktsdk.Rokt
class ConfirmationActivity : Activity() {
private val roktCalllback = object : Rokt.RoktCallback {
override fun onLoad() {
}
override fun onShouldShowLoadingIndicator() {
}
override fun onShouldHideLoadingIndicator() {
}
override fun onUnload(reason: Rokt.UnloadReasons) {
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
...
// Inclure les attributs appropriés du consommateur
val attributes = hashMapOf(
Pair("email", "j.smith@example.com"),
Pair("sandbox", "true"),
Pair("firstname", "Jenny"),
Pair("lastname", "Smith"),
Pair("mobile", "(323) 867-5309"),
Pair("postcode", "90210"),
Pair("country", "US")
)
// Widget de substitution mappant la vue de substitution avec la configuration de l'emplacement
val widget = findViewById<Widget>(R.id.roktWidget)
val placeHolders = hashMapOf(
Pair("RoktEmbedded1", WeakReference(widget))
)
Rokt.execute(
viewName = "RoktExperience",
attributes = attributes,
callback = roktCalllback,
placeholders = placeHolders
)
...
}
}
import com.rokt.roktsdk.Widget;
import com.rokt.roktsdk.Rokt;
class ConfirmationActivity : Activity() {
private Rokt.RoktCallback roktCallback = new Rokt.RoktCallback() {
@Override
public void onLoad() {
}
@Override
public void onShouldShowLoadingIndicator() {
}
@Override
public void onShouldHideLoadingIndicator() {
}
@Override
public void onUnload(@NotNull Rokt.UnloadReasons unloadReasons) {
}
};
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
...
Map<String, String> attributes = new HashMap<String, String>();
attributes.put("email", "j.smith@example.com");
attributes.put("sandbox", "true");
attributes.put("firstname", "Jenny");
attributes.put("lastname", "Smith");
attributes.put("mobile", "(323) 867-5309");
attributes.put("postcode", "90210");
attributes.put("country", "US");
// Widget de substitution mappant la vue de substitution avec la configuration de l'emplacement
Widget widget = findViewById(R.id.roktWidget);
Map<String, WeakReference<Widget>> placeHolders = new HashMap<>();
placeHolders.put("RoktEmbedded1", new WeakReference<>(widget));
Rokt.INSTANCE.execute("RoktExperience",
attributes,
roktCallback,
placeHolders);
...
}
}