Aller au contenu principal

Meilleures pratiques pour le SDK Android (ancien)

La performance des applications mobiles est cruciale pour votre entreprise. Notre technologie est axée sur l'amélioration de l'expérience de vos clients avec votre application. Ainsi, la performance des écrans est un élément central de nos solutions. Pour augmenter l'engagement et les taux de conversion, nous employons plusieurs approches pour minimiser les temps de chargement des écrans.

Composant Jetpack Compose

À partir de la version majeure 4 du SDK Android de Rokt, vous pouvez ajouter une mise en page Rokt en utilisant le composant RoktLayout. Cela élimine la nécessité d'appeler Rokt.execute et prend en charge une intégration déclarative plus moderne en utilisant Compose comme décrit dans Ajouter un emplacement.

Ajouter le composant

import com.rokt.roktsdk.RoktLayout

@Composable
fun MainScreen(modifier: Modifier = Modifier) {
Column(
modifier = modifier
.background(Color.LightGray)
.padding(8.dp),
) {
// si l'application ne prend en charge que le mode clair
val config = remember {
RoktConfig.Builder().colorMode(RoktConfig.ColorMode.LIGHT).build()
}
RoktLayout(
sdkTriggered = true,
viewName = "RoktExperience",
attributes = mapOf(
"email" to "j.smith@example.com",
"firstname" to "Jenny",
"lastname" to "Smith",
"mobile" to "(323) 867-5309",
"postcode" to "90210",
"country" to "US"
),
location = "RoktEmbedded1", // Si vous utilisez une mise en page intégrée
onLoad = {},
onUnload = {},
config = config,
onShouldShowLoadingIndicator = {},
onShouldHideLoadingIndicator = {},
)
}
}
remarque

Vous pouvez utiliser le composant RoktLayout pour les mises en page intégrées et superposées.

Utilisation des configurations d'application

Les applications peuvent désormais transmettre les paramètres de configuration depuis leur propre environnement d'application. Cela permet au SDK Rokt d'utiliser les configurations personnalisées de l'application au lieu de se fier uniquement aux paramètres par défaut du système.

Objet ColorMode

ValeurDescription
LIGHTL'application est en mode clair
DARKL'application est en mode sombre
SYSTEML'application utilise le mode couleur système par défaut

Booléen EdgeToEdgeDisplay

ValeurDescription
true(default)L'application prend en charge le mode d'affichage bord à bord
falseL'application ne prend pas en charge le mode d'affichage bord à bord
import com.rokt.roktsdk.Rokt

// si l'application ne prend en charge que le mode clair et que l'affichage bord à bord est activé.
val roktConfig = RoktConfig.Builder().colorMode(RoktConfig.ColorMode.LIGHT).edgeToEdgeDisplay(true).build()
Rokt.execute(
// autres paramètres,
config = roktConfig,
)

Objet CacheConfig

ParamètreDescription
cacheDurationDurée optionnelle en secondes pendant laquelle le SDK Rokt doit mettre en cache l'expérience. La valeur maximale autorisée est de 90 minutes et la valeur par défaut (si la valeur n'est pas fournie ou invalide) est de 90 minutes.
cacheAttributesAttributs optionnels à utiliser comme clé de cache. Si null, tous les attributs envoyés dans Rokt.execute seront utilisés comme clé de cache.
import com.rokt.roktsdk.Rokt

// pour mettre en cache l'expérience pendant 1200 secondes, en utilisant les attributs email et orderNumber comme clé de cache.
val roktConfig = RoktConfig.Builder().cacheConfig(
CacheConfig(
cacheDurationInSeconds = 1200,
cacheAttributes = mapOf("email" to "j.smith@example.com", "orderNumber" to "123")
)
).build()

Rokt.execute(
// autres paramètres,
config = roktConfig,
)

Utilisation des polices de caractères

Si vous utilisez vos propres polices de caractères comme décrit dans Initialize the Android SDK, vous devez passer une map de références faibles à vos objets typeface dans execute.

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("firstname", "Jenny");
attributes.put("lastname", "Smith");
attributes.put("mobile", "(323) 867-5309");
attributes.put("postcode", "90210");
attributes.put("country", "US");

Map<String, WeakReference<Typeface>> fontTypefaces = new HashMap<>();

fontTypefaces.put("Arial-Bold", new WeakReference<>(yourTypefaceObject));

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() {
}
},
fontTypefaces
)
...
}
}

Pour plus d'informations, voir la section comment faire.

Cet article vous a-t-il été utile ?