91 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C#
		
	
	
	
using System.Collections;
 | 
						||
using System.Collections.Generic;
 | 
						||
using UnityEngine;
 | 
						||
using System.Runtime.InteropServices;
 | 
						||
using System;
 | 
						||
 | 
						||
//Tenjin,巨量 事件上报
 | 
						||
public class TGAndroidAnalytics
 | 
						||
{
 | 
						||
    private AndroidJavaObject jo;
 | 
						||
    private static TGAndroidAnalytics _instance;
 | 
						||
    public static TGAndroidAnalytics Instance
 | 
						||
    {
 | 
						||
       get{
 | 
						||
            if (_instance == null)
 | 
						||
            {
 | 
						||
                _instance = new TGAndroidAnalytics();
 | 
						||
            }
 | 
						||
            return _instance;
 | 
						||
        }
 | 
						||
    }
 | 
						||
   public TGAndroidAnalytics()
 | 
						||
    {
 | 
						||
        using (AndroidJavaClass jc = new AndroidJavaClass("com.toukagames.common.event.AnalyticsManager"))
 | 
						||
        {
 | 
						||
            jo = jc.CallStatic<AndroidJavaObject>("getInstance");
 | 
						||
        }
 | 
						||
    }
 | 
						||
 | 
						||
    public void onEvent(string event1)
 | 
						||
    {
 | 
						||
        SDKCall("onEvent",event1);
 | 
						||
    }
 | 
						||
 | 
						||
    public void onEvent(string eventId, string value)
 | 
						||
    {
 | 
						||
        SDKCall("onEvent",eventId,value);
 | 
						||
    }
 | 
						||
 | 
						||
    public void onEvent(string eventId, Dictionary<string, string> _eventDic)
 | 
						||
    {
 | 
						||
        SDKCall("onEvent", eventId, _eventDic);
 | 
						||
    }
 | 
						||
 | 
						||
    public void onEvent(string eventId, string _key01, string _value01, string _key02, string _value02)
 | 
						||
    {
 | 
						||
        SDKCall("onEvent",eventId,_key01, _value01, _key02, _value02);
 | 
						||
    }
 | 
						||
 | 
						||
 | 
						||
    public int getInt(string key, int def)
 | 
						||
    {
 | 
						||
        return SDKCall<int>("getInt",key,def);
 | 
						||
    }
 | 
						||
 | 
						||
    public string getString(string key, string def)
 | 
						||
    {
 | 
						||
        return SDKCall<string>("getString", key, def);
 | 
						||
    }
 | 
						||
 | 
						||
    public bool getBool(string key, bool def)
 | 
						||
    {
 | 
						||
        return SDKCall<bool>("getBool", key, def);
 | 
						||
    }
 | 
						||
 | 
						||
 | 
						||
    private T SDKCall<T>(string method, params object[] param)
 | 
						||
    {
 | 
						||
        try
 | 
						||
        {
 | 
						||
            return jo.Call<T>(method, param);
 | 
						||
        }
 | 
						||
        catch (Exception e)
 | 
						||
        {
 | 
						||
            Debug.LogError(e);
 | 
						||
        }
 | 
						||
        return default(T);
 | 
						||
    }
 | 
						||
 | 
						||
    private void SDKCall(string method, params object[] param)
 | 
						||
    {
 | 
						||
        try
 | 
						||
        {
 | 
						||
            jo.Call(method, param);
 | 
						||
        }
 | 
						||
        catch (Exception e)
 | 
						||
        {
 | 
						||
            Debug.LogError(e);
 | 
						||
        }
 | 
						||
    }
 | 
						||
} |