Deep linking unifié (DLU)
Protection de la vie privée DLU
For new users, the UDL method only returns parameters relevant to deferred deep linking:
deep_link_value
anddeep_link_sub1
todeep_link_sub10
. If you try to get any other parameters (media_source
,campaign
,af_sub1-5
, etc.), they returnnull
.
Flux DLU
- Le SDK est déclenché par :
- Deep linking différé - utilisation d'une API dédiée
- Deep linking direct - déclenché par le système d'exploitation via le lien d'app Android, le lien universel iOS ou le schéma d'URI.
- The SDK triggers the
OnDeepLink
et transmet l'objet résultant du deep link à l'utilisateur. - The
OnDeepLink
utilise l'objet résultant du deep link qui contientdeep_link_value
ainsi que d'autres paramètres qui permettent de personnaliser l'expérience utilisateur, ce qui est la fonction première de OneLink.
Consultez les documents relatifs au deep linking unifié pour Android et iOS.
Attention
- Le DLU nécessite le SDK AppsFlyer Android V6.1.3 ou +.
- Ne prend pas en charge les campagnes SRN.
- For new users, the UDL method only returns parameters relevant to deferred deep linking:
deep_link_value
anddeep_link_sub1-10
. Si vous essayez d'obtenir d'autres paramètres (media_source, campagne, af_sub1-5, etc.), ils renverrontnull
. onAppOpenAttribution
ne sera pas appelé. Tout le code doit être migré versOnDeepLink
.OnDeepLink
doit être appelé aprèsinitSDK
.AppsFlyer.cs
doit être attaché au game object.
Implémentation
- Attachez
AppsFlyer.cs
au game object avec le code d'initialisation AppsFlyer (AppsFlyerObject) - Call initSDK with the
this
parameter in order for theOnDeepLinkReceived
callback to be invoked:AppsFlyer.initSDK("devkey", "appID", this);
- Attribuez
OnDeepLink
toAppsFlyer.OnDeepLinkReceived
dans la charge utile deStart()
AppsFlyer.OnDeepLinkReceived += OnDeepLink;
- Après
initSDK()
, implémentezOnDeepLink
.
Exemple
using AppsFlyerSDK;
public class AppsFlyerObjectScript : MonoBehaviour
{
void Start()
{
AppsFlyer.initSDK("devkey", "appID", this);
AppsFlyer.OnDeepLinkReceived += OnDeepLink;
AppsFlyer.startSDK();
}
void OnDeepLink(object sender, EventArgs args)
{
var deepLinkEventArgs = args as DeepLinkEventsArgs;
switch (deepLinkEventArgs.status)
{
case DeepLinkStatus.FOUND:
if (deepLinkEventArgs.isDeferred())
{
AppsFlyer.AFLog("OnDeepLink", "This is a deferred deep link");
}
else
{
AppsFlyer.AFLog("OnDeepLink", "This is a direct deep link");
}
// deepLinkParamsDictionary contains all the deep link parameters as keys
Dictionary<string, object> deepLinkParamsDictionary = null;
#if UNITY_IOS && !UNITY_EDITOR
if (deepLinkEventArgs.deepLink.ContainsKey("click_event") && deepLinkEventArgs.deepLink["click_event"] != null)
{
deepLinkParamsDictionary = deepLinkEventArgs.deepLink["click_event"] as Dictionary<string, object>;
}
#elif UNITY_ANDROID && !UNITY_EDITOR
deepLinkParamsDictionary = deepLinkEventArgs.deepLink;
#endif
break;
case DeepLinkStatus.NOT_FOUND:
AppsFlyer.AFLog("OnDeepLink", "Deep link not found");
break;
default:
AppsFlyer.AFLog("OnDeepLink", "Deep link error");
break;
}
}
}
Mis(e) à jour il y a 6 mois