// this is the internal handler - handling deeplinks for both iOS & Android public void DeepLinkHandler(string message) { Debug.Log(string.Format("SingularSDK DeepLinkHandler called! message='{0}'", message)); if (Application.isEditor) { return; } if (message == "") { message = null; } if (registeredDDLHandler != null) { registeredDDLHandler.OnDeferredDeepLink(message); } else { cachedDDLMessage = message; cachedDDLMessageTime = CurrentTimeSec(); } }
public static void SetDeferredDeepLinkHandler(SingularDeferredDeepLinkHandler ddlHandler) { if (!instance) { Debug.LogError("SingularSDK SetDeferredDeepLinkHandler, no instance available - cannot set deferred deeplink handler!"); return; } registeredDDLHandler = ddlHandler; System.Int32 now = (System.Int32)(System.DateTime.UtcNow.Subtract(new System.DateTime(1970, 1, 1))).TotalSeconds; // call the ddl handler with the cached value if the timeout has not passed yet if (now - cachedDDLMessageTime < instance.ddlTimeoutSec && cachedDDLMessage != null) { registeredDDLHandler.OnDeferredDeepLink(cachedDDLMessage); } }
// this is the internal handler - handling deeplinks for both iOS & Android public void DeepLinkHandler(string message) { Debug.Log(string.Format("SingularSDK DeepLinkHandler called! message='{0}'", message)); if (message == "") { message = null; } if (registeredDDLHandler != null) { registeredDDLHandler.OnDeferredDeepLink(message); } else { cachedDDLMessage = message; cachedDDLMessageTime = (System.Int32)(System.DateTime.UtcNow.Subtract(new System.DateTime(1970, 1, 1))).TotalSeconds; }; }