Initialiser le SDK Android
Les partenaires de Rokt peuvent utiliser le SDK Android pour afficher des emplacements en overlay ou intégrés, tandis que les marques Rokt peuvent l'utiliser pour enregistrer des conversions pour leurs campagnes. Le SDK Android de Rokt est déployé à l'aide de Maven et Gradle.
Le SDK Android de Rokt contient des règles ProGuard et ne nécessite pas de configuration supplémentaire.
Tous les cas d'utilisation du SDK suivent les mêmes étapes initiales pour intégrer et initialiser le SDK. À un niveau élevé, ces étapes sont :
- Configurer un espace de travail et activer le dépôt Gradle de Rokt
- Ajouter le plugin Rokt Placement
- Ajouter le module SDK Android de Rokt
- Initialiser le SDK Android de Rokt
Suivant ces étapes, la méthode execute
du SDK peut ensuite être utilisée de diverses manières pour s'adapter au cas d'utilisation requis.
Avant de commencer
Ce guide suppose que vous êtes familier avec Gradle et que vous savez comment installer un plugin pour le développement Android.
Configuration du SDK Android
- Configurez un espace de travail et activez le dépôt Gradle de Rokt. Pour configurer un dépôt, suivez les instructions de Gradle.
- Ajoutez l'URL du dépôt du plugin Rokt Widget dans le fichier
settings.gradle
du projet.
- Kotlin
- Groovy
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven("https://apps.rokt.com/msdk")
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven {
url "https://apps.rokt.com/msdk"
}
}
}
Ou si vous utilisez une version de Gradle inférieure à 7.0.0 où les paramètres du dépôt sont plutôt dans le fichier build.gradle de haut niveau, ajoutez les éléments suivants dans le fichier build.gradle.
- Kotlin
- Groovy
// file => build.gradle.kts (Project: ....)
allprojects {
repositories {
google()
mavenCentral()
maven("https://apps.rokt.com/msdk")
}
}
// file => build.gradle (Project: ....)
allprojects {
repositories {
google()
mavenCentral()
maven {
url "https://apps.rokt.com/msdk"
}
}
}
- (Optionnel) Si vous utilisez un catalogue de versions, ajoutez le module SDK Android Rokt à votre
libs.versions.toml
(ou tout autre catalogue nommé).
[versions]
roktsdk = "4.7.0"
[libraries]
roktsdk = { group = "com.rokt", name = "roktsdk", version.ref = "roktsdk" }
- Ajoutez le module SDK Android Rokt à
build.gradle
pour le module.
Avec le Catalogue de Versions
- Kotlin
- Groovy
// fichier => build.gradle.kts (Module: ...)
dépendances {
...
implementation(libs.roktsdk)
...
}
// fichier => build.gradle (Module: ...)
dépendances {
...
implementation(libs.roktsdk)
...
}
Sans le Catalogue de Versions
- Kotlin
- Groovy
// fichier => build.gradle.kts (Module: ...)
dépendances {
...
implementation('com.rokt:roktsdk:4.7.0')
...
}
// fichier => build.gradle (Module: ...)
dépendances {
...
implementation 'com.rokt:roktsdk:4.7.0'
...
}
- Initialisez le SDK Rokt avant de l'utiliser dans toute activité. Nous recommandons d'appeler la méthode
init
à partir de la classeLauncherActivity
.
Contactez Rokt pour obtenir l'ID de compte Rokt associé à votre compte. Pour tester votre intégration, vous pouvez utiliser l'ID de compte Rokt ci-dessous, mais vous devez le remplacer par votre ID de compte Rokt unique avant le lancement en production.
ID de compte de test : 222
- Java
- Kotlin
import com.rokt.roktsdk.Rokt
public class LauncherActivity: Activity {
override fun onCreate(savedInstanceState: Bundle?) {
...
// Ce qui suit révélera une intégration de démonstration. Pour voir votre intégration :
// 1) Remplacez l'ID de balise de test d'intégration (222) par votre ID de balise Rokt unique
// 2) Remplacez Y.Y.Y par la version de l'application
Rokt.init("222", "Y.Y.Y", this@LauncherActivity)
...
}
}
import com.rokt.roktsdk.Rokt;
public class LauncherActivity extends Activity {
override fun onCreate(savedInstanceState: Bundle?) {
...
// Le code suivant révélera une intégration de démonstration. Pour voir votre intégration :
// 1) Remplacez l'ID de balise de test d'intégration (222) par votre ID de balise Rokt unique
// 2) Remplacez Y.Y.Y par la version de l'application
Rokt.INSTANCE.init("222", "Y.Y.Y", LauncherActivity.this)
...
}
}
Initialisation avec les polices
Cette fonctionnalité est prise en charge à partir de la version 4.2.0 du SDK Rokt Android.
Au lieu de fournir vos polices souhaitées sur One Platform ou en plus, vous pouvez choisir d'utiliser les polices déjà intégrées à votre application. Cela présente l'avantage de supprimer la possibilité que les polices soient téléchargées au moment de l'initialisation, réduisant ainsi l'utilisation du réseau et les risques d'erreurs de téléchargement. Vous pouvez choisir d'utiliser soit les ressources de police situées dans le répertoire assets
de votre application, soit de passer vos propres objets Typeface
.
Utilisation des polices d'actifs
Vous pouvez utiliser les polices stockées dans le répertoire assets
de votre application. Pour cela, vous pouvez passer une carte à la méthode init
qui associe les noms PostScript des polices au chemin du fichier dans le répertoire assets (où le répertoire assets est le répertoire racine). Les noms PostScript doivent correspondre à ceux utilisés dans votre mise en page, veuillez vérifier avec votre responsable de compte si vous n'êtes pas sûr.
- Java
- Kotlin
import com.rokt.roktsdk.Rokt
public class LauncherActivity: Activity {
override fun onCreate(savedInstanceState: Bundle?) {
...
Rokt.init(
"222",
"Y.Y.Y",
this@LauncherActivity,
fontFilePathMap = mapOf("Arial-Bold", "fonts/arialbold.otf")
)
...
}
}
import com.rokt.roktsdk.Rokt;
public class LauncherActivity extends Activity {
override fun onCreate(savedInstanceState: Bundle?) {
...
Map<String,String> fontFilePathMap = new HashMap<String, String>();
fontFilePathMap.put("Arial-Bold", "fonts/arialbold.otf");
Rokt.INSTANCE.init(
"222",
"Y.Y.Y",
LauncherActivity.this,
new HashSet<>(), // fontPostScriptNames peut être vide
fontFilePathMap
);
...
}
}
Utilisation des Polices d'Écriture
Vous pouvez également utiliser des objets Typeface que vous avez créés dans votre application. Pour cela, vous devez passer un ensemble de noms postscript des polices à la fonction init
, et plus tard passer les Typefaces à la fonction execute
(détaillé dans Ajouter un placement).
- Java
- Kotlin
import com.rokt.roktsdk.Rokt
public class LauncherActivity: Activity {
override fun onCreate(savedInstanceState: Bundle?) {
...
Rokt.init(
"222",
"Y.Y.Y",
this@LauncherActivity,
fontPostScriptNames = setOf("Arial-Bold")
)
...
}
}
import com.rokt.roktsdk.Rokt;
public class LauncherActivity extends Activity {
override fun onCreate(savedInstanceState: Bundle?) {
...
Set<String> fontPostScriptNames = new HashSet<String>();
fontFilePathMap.add("Arial-Bold");
Rokt.INSTANCE.init(
"222",
"Y.Y.Y",
LauncherActivity.this,
fontPostScriptNames
);
...
}
}
Réception du statut d'initialisation
À partir de la version 4.6.0
, le SDK Rokt propose 2 manières de recevoir le statut de l'initialisation :
Callback optionnel lors de l'initialisation
Il y a un callback dans la méthode Rokt.init
pour notifier lorsque l'initialisation est complétée et retourner le statut.
import com.rokt.roktsdk.Rokt
public class LauncherActivity: Activity {
override fun onCreate(savedInstanceState: Bundle?) {
...
Rokt.init("222",
"Y.Y.Y",
this@LauncherActivity,
callback = object : Rokt.RoktInitCallback {
override fun onInitComplete(success: Boolean) {
Log.d("Rokt", "initialisation complétée $success")
}
},
)
...
}
}
API des événements globaux
Le SDK fournit également le statut sous forme de flux via l'API Rokt.globalEvents
. Les utilisateurs du SDK peuvent utiliser le mécanisme Kotlin Flow pour consommer le statut.
// owner: LifecycleOwner
owner.lifecycleScope.launch {
Rokt.globalEvents().collect { event ->
if (event is RoktEvent.InitComplete)
Log.d("Rokt", "initialisation complétée reçue $event")
}
}
Débogage
Utilisez l'API Rokt.setLoggingEnabled(enable = true)
pour activer les journaux de débogage du SDK Rokt.
Prochaines étapes
Les étapes suivantes dépendent de votre cas d'utilisation pour l'intégration. Consultez ces sujets pour en savoir plus :