Vue d'ensemble

Implémentez et attribuez les liens d'invitation des utilisateurs lorsque des utilisateurs existants recommandent votre app.
Pour une présentation, voir les invitations d'utilisateur.

Voulez-vous voir un exemple complet ? consultez la recette :

Implémenter les invitations d'utilisateur

Avant de démarrer : mettez-vous d'accord avec le responsable marketing pour définir à quoi serviront précisément les liens, et obtenir la liste des paramètres qu'il souhaite implémenter.

Pour implémenter l'attribution des invitations d'utilisateur, procédez comme suit :

  1. Configurez la génération de liens pour les liens d'invitation.
  2. OPTIONNELLE Enregistrez la création du lien d'invitation.
  3. Configurez le deeplinking unifié (DLU).
  4. OPTIONNELLE Récupérez les données de référence des liens d'invitation utilisateur.
  5. Facultatif Configurez les récompenses pour le référent.

Le code suivant est basé sur l'exemple du partenaire marketing.

Set up invite link generation

Pour permettre aux utilisateurs d'inviter leurs amis à rejoindre votre app, vous devez pouvoir générer des liens d'invitation. Pour ce faire, vous devez utiliser AppsFlyerLinkGenerator.
Pour configurer la génération des liens d'invitation :

  1. Assurez-vous d'importer AppsFlyerLib:

    import com.appsflyer.AppsFlyerLib;
    
  2. In AppDelegate, configurez un template OneLink en utilisant appInviteOneLinkID (l'ID du template est fourni par le marketeur) :

    AppsFlyerLib.shared().appInviteOneLinkID = "H5hv" // Set the OneLink template ID for userinvitation links
    

    📘

    Remarque

    • Veillez à définir appInviteOneLinkID avant d'appeler start
    • Le template OneLink doit être relié à l'application.
  3. Appelez AppsFlyerShareInviteHelper.generateInviteUrl et de lui transmettre un AppsFlyerLinkGenerator et un completionHandler:

    AppsFlyerShareInviteHelper.generateInviteUrl(
        linkGenerator: {
            (_ generator: AppsFlyerLinkGenerator) -> AppsFlyerLinkGenerator in
                generator.addParameterValue(<TARGET_VIEW>, forKey: "deep_link_value")
                generator.addParameterValue(<PROMO_CODE>, forKey: "deep_link_sub1")
                generator.addParameterValue(<REFERRER_ID>, forKey: "deep_link_sub2")
                // Optional; makes the referrer ID available in the installs raw-data report
                generator.addParameterValue(<REFERRER_ID>, forKey: "af_sub1")
                generator.setCampaign("summer_sale")
                generator.setChannel("mobile_share")
          		// Optional; Set a branded domain name:
          		generator.brandDomain = "brand.domain.com"
                return generator
        },
        completionHandler: {
            (_ url: URL?) -> Void in
                if url != nil {
                    NSLog("[AFSDK] AppsFlyer share-invite link: \(url!.absoluteString)")
                }        
                else {
                    print("url is nil")
                }
            }
    )
    

    En fonction du flux d'utilisateurs que vous et le marketeur souhaitez atteindre, configurez generator comme suit :

    • Définissez les paramètres d'attribution à l'aide de setters.
    • Définissez des paramètres de deep linking à l'aide de AppsFlyerLinkGenerator.addParameterValue:
      • deep_link_value: l'utilisation de l'app vers laquelle l'utilisateur référé sera deep linké.
      • deep_link_sub1: un paramètre personnalisable. Dans cet exemple, permet de transmettre le code promo reçu par l'invité.
      • deep_link_sub2: identifiant du référent. Peut être utilisé pour récompenser le référent.
  4. Dans la section completionHandler, vérifiez si l'URL a été créée avec succès (url et non pas nil), et récupère le lien d'invitation de l'utilisateur généré.

  5. Permet à un utilisateur de partager les liens qui ont été générés. Il peut par exemple les copier dans son presse-papiers.

Set the shortlink ID

OPTIONNELLE
The shortlink ID can be determined by the developer, by adding the paramter af_custom_shortlink to the LinkGenerator instance.

generator.addParameterValue(<value>, forKey:"af_custom_shortlink")

Log invite link creation events

OPTIONNELLE
Pour enregistrer l'événement de génération d'un lien d'invitation :
envoyez un événement indiquant qu'un utilisateur a généré un lien d'invitation en utilisantlogInvite:

AppsFlyerShareInviteHelper.logInvite(<CHANNEL>, parameters: [
    "campaign" : "summer_sale",
    "referrerId" : <REFERRER_ID>,
]);

logInvite donne comme résultat un événement in-app af_invite .

📘

Remarque

Si vous ne voulez pas utiliser de canal, vous pouvez utiliser logEvent à la place.

Set up UDL for user invite attribution

OPTIONNELLE
Pour configurer le DLU pour l'attribution des invitations utilisateur :

  1. Configurer le deeplinking unifié (DLU).

  2. In DeepLinkDelegate.didResolveDeepLink, récupérez les paramètres de deep linking créés lors de la génération des liens. Dans cet exemple, les propriétés suivantes sont récupérées :

    • deep_link_valueen utilisant DeepLink.deeplinkValue
    • deep_link_sub1en utilisant DeepLink.clickEvent["deep_link_sub1"]
    • deep_link_sub2en utilisant DeepLink.clickEvent["deep_link_sub2"]

    Voir le code : Swift.

  3. Une fois que vous avez récupéré l'ID du référent, c'est à vous de décider comment il est stocké et utilisé.

Récompenses pour les référents

OPTIONNELLEDans les exemples suivants, l'utilisateur A invite l'utilisateur B à rejoindre votre app.

Reward referrers on install

Exemple : l'utilisateur B installe votre app via le lien d'invitation de l'utilisateur A.
L'ID du référent de l'utilisateur A est disponible dans le DLU. didResolveDeepLink (dans cet exemple, sous DeepLink.clickEvent["deep_link_sub2"]). Une fois que vous avez récupéré l'identifiant, ajoutez-le à la liste des ID de référent à récompenser. C'est vous qui décidez comment stocker et consulter cette liste.

Reward referrers on in-app events

Exemple : l'utilisateur B effectue un achat. Vous souhaitez récompenser l'utilisateur A pour cette action, car il a recommandé votre app à l'utilisateur B.

Récompenser l'utilisateur A pour l'action de l'utilisateur B :

  1. Récupérez l'ID de référent de l'utilisateur A et ajoutez-le à l'un des paramètres d'événement in-app personnalisables (exemple : af_param_1).
    AppsFlyerLib.shared().logEvent(AFEventPurchase, 
      withValues: [
    		AFEventParamRevenue: 200,
    		AFEventParamCurrency:"USD",
            AFEventParam1: <REFERRER_ID>
      ]);
    
  2. Dans votre backend, récupérez les données des événements d'app.
  3. Ajoutez les ID de référent qui ont été trouvés à la liste des utilisateurs à récompenser.
  4. Lorsque l'utilisateur A lance l'app, vérifiez si son ID de référent figure dans la liste des utilisateurs à récompenser, et récompensez-le si c'est le cas.

📘

Remarque

  • Les étapes 2 à 3 ne sont pas menées par le développeur mobile. L'étape 4 dépend de la manière dont les étapes 2 et 3 sont implémentées.
  • Un événement d'achat n'est qu'un exemple. La même chose s'applique à tout type d'événement in-app.