| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- using System;
- using System.Runtime.InteropServices;
- using UnityEngine;
- using System.Collections;
- using TapSDK.Core;
- using TapSDK.Core.Internal;
- using System.Collections.Generic;
- using TapSDK.Core.Internal.Log;
- namespace TapSDK.Core.Mobile{
- internal class AndroidNativeWrapper
- {
- private static AndroidJavaClass tapTapEventClass;
-
- public static void RegisterDynamicProperties(Func<string> callback)
- {
- tapTapEventClass = new AndroidJavaClass("com.taptap.sdk.core.TapTapEvent");
- AndroidJavaProxy dynamicPropertiesProxy = new TapEventDynamicPropertiesProxy(callback);
- tapTapEventClass.CallStatic("registerDynamicProperties", dynamicPropertiesProxy);
- }
- private class TapEventDynamicPropertiesProxy : AndroidJavaProxy
- {
- private Func<string> callback;
- public TapEventDynamicPropertiesProxy(Func<string> callback)
- : base("com.taptap.sdk.core.TapTapEvent$TapEventDynamicProperties")
- {
- this.callback = callback;
- }
- public AndroidJavaObject getDynamicProperties()
- {
- try
- {
- string json = callback();
- if (!string.IsNullOrEmpty(json))
- {
- return new AndroidJavaObject("org.json.JSONObject", json);
- }
- }
- catch (Exception e)
- {
- TapLog.Error("Failed to get dynamic properties: " + e.Message);
- }
- return null;
- }
- }
- }
- }
|