11using System . Collections . Generic ;
22using GameFrameX . GameAnalytics . Runtime ;
3+ using GameFrameX . Runtime ;
34using GravityEngine ;
45using GravitySDK . PC . Constant ;
56using UnityEngine ;
@@ -13,16 +14,39 @@ public sealed class GameAnalyticsByGravityEngineManager : BaseGameAnalyticsManag
1314 {
1415 private readonly Dictionary < string , object > m_publicProperties = new Dictionary < string , object > ( ) ;
1516
16- public override void Init ( string appid , string channelId , string channel , string appKey , string secretKey )
17+ private readonly Dictionary < string , string > m_Args = new Dictionary < string , string > ( ) ;
18+
19+ public override void Init ( Dictionary < string , string > args )
20+ {
21+ Log . Info ( "GameAnalyticsByGravityEngineManager Init, args:" + Utility . Json . ToJson ( args ) ) ;
22+
23+ m_Args [ "accessToken" ] = args [ "accessToken" ] ;
24+ m_Args [ "channel" ] = args [ "channel" ] ;
25+ m_Args [ "debug" ] = args [ "debug" ] ;
26+ }
27+
28+ public override void ManualInit ( Dictionary < string , string > args )
1729 {
30+ Log . Info ( "GameAnalyticsByGravityEngineManager ManualInit, args:" + Utility . Json . ToJson ( args ) ) ;
31+
1832 var gravityEngineAPI = Object . FindObjectOfType < GravityEngineAPI > ( ) ;
1933 if ( gravityEngineAPI == null )
2034 {
2135 Debug . LogError ( "在场景中找不到GravityEngineAPI组件,请确保场景中存在一个GravityEngineAPI组件" ) ;
2236 return ;
2337 }
2438
25- GravityEngineAPI . StartGravityEngine ( appid , channelId , GravityEngineAPI . SDKRunMode . NORMAL , channel ) ;
39+ m_Args [ "clientId" ] = args [ "clientId" ] ;
40+
41+ bool debug = false ;
42+ if ( m_Args . ContainsKey ( "debug" ) )
43+ {
44+ debug = m_Args [ "debug" ] == "true" ;
45+ }
46+
47+ Log . Info ( "GameAnalyticsByGravityEngineManager ManualInit with accessToken:" + m_Args [ "accessToken" ] + ", clientId:" + m_Args [ "clientId" ] + ", channel:" + m_Args [ "channel" ] ) ;
48+
49+ GravityEngineAPI . StartGravityEngine ( m_Args [ "accessToken" ] , m_Args [ "clientId" ] , debug ? GravityEngineAPI . SDKRunMode . DEBUG : GravityEngineAPI . SDKRunMode . NORMAL , m_Args [ "channel" ] ) ;
2650#if UNITY_WEBGL
2751#if ENABLE_WECHAT_MINI_GAME && GRAVITY_WECHAT_GAME_MODE
2852 GravityEngineAPI . EnableAutoTrack ( AUTO_TRACK_EVENTS . WECHAT_GAME_ALL ) ;
@@ -34,6 +58,21 @@ public override void Init(string appid, string channelId, string channel, string
3458#else
3559 GravityEngineAPI . EnableAutoTrack ( AUTO_TRACK_EVENTS . APP_ALL ) ;
3660#endif
61+
62+ m_IsInit = true ;
63+ Log . Info ( "GameAnalyticsByGravityEngineManager ManualInit Success" ) ;
64+
65+ int version = 1 ;
66+ if ( m_Args . ContainsKey ( "version" ) )
67+ {
68+ version = int . Parse ( m_Args [ "version" ] ) ;
69+ }
70+ GravityEngineAPI . Initialize ( m_Args [ "clientId" ] , "default" , version , m_Args [ "clientId" ] , false , new InitializeCallbackImpl ( ) ) ;
71+ }
72+
73+ public override bool IsManualInit ( )
74+ {
75+ return true ;
3776 }
3877
3978 public override void SetPublicProperties ( string key , object value )
0 commit comments