示例#1
0
    // 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();
        }
    }
示例#2
0
    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);
        }
    }
示例#3
0
    // 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;
        };
    }