|
|
@@ -8,42 +8,21 @@ namespace GFGGame.Launcher
|
|
|
{
|
|
|
public IJHGameSDKListener _jhGameSDKListener;
|
|
|
|
|
|
+ public JHGameSDKHandler _eventHandler;
|
|
|
+
|
|
|
// SDK 参数
|
|
|
public void InitSDK()
|
|
|
{
|
|
|
- JHGameSDKHandler eventHandler = GameObject.Find("JHGameSDKGameObject")?.GetComponent<JHGameSDKHandler>();
|
|
|
- if (eventHandler == null)
|
|
|
+ _eventHandler = GameObject.Find("JHGameSDKGameObject")?.GetComponent<JHGameSDKHandler>();
|
|
|
+ if (_eventHandler == null)
|
|
|
{
|
|
|
GameObject gameObject = new GameObject("JHGameSDKGameObject");
|
|
|
gameObject.AddComponent<JHGameSDKHandler>();
|
|
|
GameObject.DontDestroyOnLoad(gameObject);
|
|
|
+ _eventHandler = GameObject.Find("JHGameSDKGameObject")?.GetComponent<JHGameSDKHandler>();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- // // 调用JS函数的通用方法
|
|
|
- // private void CallJSFunction(string functionName, Dictionary<string, object> parameters)
|
|
|
- // {
|
|
|
- // // 将参数字典转换为JSON字符串
|
|
|
- // string jsonParams = JsonUtility.ToJson(parameters);
|
|
|
- //
|
|
|
- // // 调用JS函数
|
|
|
- // Application.ExternalCall(functionName, jsonParams);
|
|
|
- // }
|
|
|
-
|
|
|
- private void CallJSFunction(string functionName, Dictionary<string, object> parameters)
|
|
|
- {
|
|
|
- string jsonParams = JsonUtility.ToJson(parameters ?? new Dictionary<string, object>());
|
|
|
- Debug.Log($"CallJSFunction {functionName}: {jsonParams}");
|
|
|
-
|
|
|
-#if UNITY_WEBGL && !UNITY_EDITOR
|
|
|
- // 调用JSLib方法
|
|
|
- JH_CallJSFunction(functionName, jsonParams);
|
|
|
-#else
|
|
|
- // 非WebGL环境模拟调用(如编辑器)
|
|
|
- Debug.Log($"[模拟] 调用 {functionName}: {jsonParams}");
|
|
|
-#endif
|
|
|
- }
|
|
|
-
|
|
|
/// <summary>
|
|
|
/// 支付相关
|
|
|
/// </summary>
|
|
|
@@ -85,8 +64,8 @@ namespace GFGGame.Launcher
|
|
|
{ "fighting", fighting }
|
|
|
};
|
|
|
|
|
|
- // 调用JS的JHRecharge函数
|
|
|
- CallJSFunction("JHRecharge", parameters);
|
|
|
+ string jsonParams = JsonUtility.ToJson(parameters);
|
|
|
+ _eventHandler.CallJHRechargeAb(jsonParams);
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
@@ -119,8 +98,8 @@ namespace GFGGame.Launcher
|
|
|
{ "roleCTime", roleCTime }
|
|
|
};
|
|
|
|
|
|
- // 调用JS的JHCreateRole函数
|
|
|
- CallJSFunction("JHCreateRole", parameters);
|
|
|
+ string jsonParams = JsonUtility.ToJson(parameters);
|
|
|
+ _eventHandler.CallJHCreateRoleAb(jsonParams);
|
|
|
}
|
|
|
|
|
|
// 角色登录
|
|
|
@@ -143,7 +122,8 @@ namespace GFGGame.Launcher
|
|
|
};
|
|
|
|
|
|
// 调用JS的JHLoginRole函数
|
|
|
- CallJSFunction("JHLoginRole", parameters);
|
|
|
+ string jsonParams = JsonUtility.ToJson(parameters);
|
|
|
+ _eventHandler.CallJHLoginRoleAb(jsonParams);
|
|
|
}
|
|
|
|
|
|
// 角色升级
|
|
|
@@ -166,21 +146,24 @@ namespace GFGGame.Launcher
|
|
|
};
|
|
|
|
|
|
// 调用JS的JHUpgradeRole函数
|
|
|
- CallJSFunction("JHUpgradeRole", parameters);
|
|
|
+ string jsonParams = JsonUtility.ToJson(parameters);
|
|
|
+ _eventHandler.CallJHUpgradeRoleAb(jsonParams);
|
|
|
}
|
|
|
|
|
|
// 顶号处理
|
|
|
public void RepeatLogin()
|
|
|
{
|
|
|
// 调用JS的JHRepeatLogin函数
|
|
|
- CallJSFunction("JHRepeatLogin", new Dictionary<string, object>());
|
|
|
+ string jsonParams = JsonUtility.ToJson(new Dictionary<string, object>());
|
|
|
+ _eventHandler.CallJHRepeatLoginAb(jsonParams);
|
|
|
}
|
|
|
|
|
|
// 备案跳转
|
|
|
public void CallIcpBeian()
|
|
|
{
|
|
|
// 调用JS的JHCallIcpBeian函数
|
|
|
- CallJSFunction("JHCallIcpBeian", new Dictionary<string, object>());
|
|
|
+ string jsonParams = JsonUtility.ToJson(new Dictionary<string, object>());
|
|
|
+ _eventHandler.CallJHCallIcpBeianAb(jsonParams);
|
|
|
}
|
|
|
|
|
|
public class JHGameSDKHandler : AbJHGameSDKHandler
|