Exemplo n.º 1
0
 public static void DispatchEventWithResponseCallback(ACPExtensionEvent acpExtensionEvent, AdobeEventCallback responseCallback, AdobeExtensionErrorCallback errorCallback)
 {
     if (acpExtensionEvent == null)
     {
         Debug.Log("Unable to perform DispatchEventWithResponseCallback, acpExtensionEvent is null");
         return;
     }
                 #if UNITY_ANDROID && !UNITY_EDITOR
     AndroidJavaObject eventObj = ACPHelpers.GetAdobeEventFromACPExtensionEvent(acpExtensionEvent);
     mobileCore.CallStatic <Boolean>("dispatchEventWithResponseCallback", eventObj, new EventCallback(responseCallback), new ExtensionErrorCallback(errorCallback));
                 #elif UNITY_IPHONE && !UNITY_EDITOR
     if (acpExtensionEvent.eventName == null || acpExtensionEvent.eventType == null || acpExtensionEvent.eventSource == null)
     {
         Debug.Log("Unable to perform DispatchEventWithResponseCallback, input params are null");
         return;
     }
     string jsonDataEvent = ACPHelpers.JsonStringFromDictionary(acpExtensionEvent.eventData);
     if (jsonDataEvent == null)
     {
         Debug.Log("Unable to perform DispatchEventWithResponseCallback, invalid event data");
         return;
     }
     acp_DispatchEventWithResponseCallback(acpExtensionEvent.eventName, acpExtensionEvent.eventType, acpExtensionEvent.eventSource, jsonDataEvent, responseCallback, errorCallback);
                 #endif
 }
Exemplo n.º 2
0
 public static void DispatchResponseEvent(ACPExtensionEvent responseEvent, ACPExtensionEvent requestEvent, AdobeExtensionErrorCallback errorCallback)
 {
     if (responseEvent == null || requestEvent == null)
     {
         Debug.Log("Unable to perform DispatchResponseEvent, responseEvent or requestEvent is null");
         return;
     }
                 #if UNITY_ANDROID && !UNITY_EDITOR
     AndroidJavaObject responseEventObject = ACPHelpers.GetAdobeEventFromACPExtensionEvent(responseEvent);
     AndroidJavaObject requestEventObject  = ACPHelpers.GetAdobeEventFromACPExtensionEvent(requestEvent);
     mobileCore.CallStatic <Boolean>("dispatchResponseEvent", responseEventObject, requestEventObject, new ExtensionErrorCallback(errorCallback));
                 #elif UNITY_IPHONE && !UNITY_EDITOR
     if (responseEvent.eventName == null || responseEvent.eventType == null || responseEvent.eventSource == null || requestEvent.eventName == null || requestEvent.eventType == null || requestEvent.eventSource == null)
     {
         Debug.Log("Unable to perform DispatchResponseEvent, input params are null");
         return;
     }
     string responseJsonDataEvent = ACPHelpers.JsonStringFromDictionary(responseEvent.eventData);
     string requestJsonDataEvent  = ACPHelpers.JsonStringFromDictionary(requestEvent.eventData);
     if (responseJsonDataEvent == null || requestJsonDataEvent == null)
     {
         Debug.Log("Unable to perform DispatchResponseEvent, responseEventData or requestEventData is invalid");
         return;
     }
     acp_DispatchResponseEvent(responseEvent.eventName, responseEvent.eventType, responseEvent.eventSource, responseJsonDataEvent,
                               requestEvent.eventName, requestEvent.eventType, requestEvent.eventSource, requestJsonDataEvent, errorCallback);
                 #endif
 }
Exemplo n.º 3
0
        protected internal static AndroidJavaObject GetAdobeEventFromACPExtensionEvent(ACPExtensionEvent acpExtensionEvent)
        {
            if (acpExtensionEvent == null)
            {
                return(null);
            }

            using (AndroidJavaObject eventBuilder = new AndroidJavaObject("com.adobe.marketing.mobile.Event$Builder", acpExtensionEvent.eventName, acpExtensionEvent.eventType, acpExtensionEvent.eventSource))
            {
                if (acpExtensionEvent.eventData != null)
                {
                    using (var hashmap = GetHashMapFromDictionary(acpExtensionEvent.eventData)) {
                        eventBuilder.Call <AndroidJavaObject>("setEventData", hashmap);
                    }
                }

                AndroidJavaObject eventObj = eventBuilder.Call <AndroidJavaObject>("build");
                return(eventObj);
            }
        }