Aller au contenu principal

Pratiques recommandées pour le SDK Android

La performance des applications mobiles est cruciale pour votre entreprise. Notre technologie se concentre sur l'amélioration de l'expérience de vos clients avec votre application. Ainsi, la performance des écrans est un composant 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 Rokt, vous pouvez ajouter une disposition Rokt en utilisant le composant RoktLayout. Cela élimine le besoin 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.

Ajout du composant

import com.rokt.roktsdk.RoktLayout

@Composable
fun MainScreen(modifier: Modifier = Modifier) {
Column(
modifier = modifier
.background(Color.LightGray)
.padding(8.dp),
) {
// si l'application supporte uniquement 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 disposition intégrée
onLoad = {},
onUnload = {},
config = config,
onShouldShowLoadingIndicator = {},
onShouldHideLoadingIndicator = {},
)
}
}
remarque

Vous pouvez utiliser le composant RoktLayout pour les dispositions 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 de couleur par défaut du système
import com.rokt.roktsdk.Rokt

// si l'application ne prend en charge que le mode clair.
val roktConfig = RoktConfig.Builder().colorMode(RoktConfig.ColorMode.LIGHT).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" à "j.smith@example.com", "orderNumber" à "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 Initialiser le SDK Android, vous devez passer une carte 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 ?