|
@@ -0,0 +1,302 @@
|
|
|
|
+using DouYouSdk;
|
|
|
|
+using UniFramework.Event;
|
|
|
|
+using UnityEngine;
|
|
|
|
+
|
|
|
|
+namespace GFGGame.Launcher
|
|
|
|
+{
|
|
|
|
+ public class QDDouYouManagerInit : SingletonBase<QDDouYouManagerInit>
|
|
|
|
+ {
|
|
|
|
+ public IDouYouSDKListener douYouSDKListener;
|
|
|
|
+
|
|
|
|
+ private static AndroidJavaClass _unityPlayerClass;
|
|
|
|
+
|
|
|
|
+ private static AndroidJavaObject _douYouMainActivity;
|
|
|
|
+
|
|
|
|
+ public void InitSDK(string adId)
|
|
|
|
+ {
|
|
|
|
+ if (_unityPlayerClass == null)
|
|
|
|
+ {
|
|
|
|
+ _unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (_douYouMainActivity == null)
|
|
|
|
+ {
|
|
|
|
+ _douYouMainActivity = _unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ DouYouSDKHandler eventHandler = GameObject.Find("DouYouSDKGameObject")?.GetComponent<DouYouSDKHandler>();
|
|
|
|
+ if (eventHandler == null)
|
|
|
|
+ {
|
|
|
|
+ GameObject gameObject = new GameObject("DouYouSDKGameObject");
|
|
|
|
+ gameObject.AddComponent<DouYouSDKHandler>();
|
|
|
|
+ GameObject.DontDestroyOnLoad(gameObject);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ Instance.CallDouYouMainActivity("initDouYou", adId);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //调用桥接的 DouYouMainActivity.java 对象的方法
|
|
|
|
+ private void CallDouYouMainActivity(string functionName, params object[] args)
|
|
|
|
+ {
|
|
|
|
+ _douYouMainActivity.Call(functionName, args);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //临时获取adId,之后需要配置到配置文件里面,已达到热更
|
|
|
|
+ public string GetAdId()
|
|
|
|
+ {
|
|
|
|
+ return "123";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 显示登录界面
|
|
|
|
+ /// </summary>
|
|
|
|
+ public void ShowLogin()
|
|
|
|
+ {
|
|
|
|
+ Instance.CallDouYouMainActivity("extShowLogin");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 角色登录数据上报
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="id">角色ID</param>
|
|
|
|
+ /// <param name="level">角色等级</param>
|
|
|
|
+ /// <param name="nickname">角色名称</param>
|
|
|
|
+ /// <param name="sid">区服ID</param>
|
|
|
|
+ /// <param name="serverName">区服名称</param>
|
|
|
|
+ public void ReportRoleLogin(string id, string level, string nickname, string sid, string serverName)
|
|
|
|
+ {
|
|
|
|
+ Instance.CallDouYouMainActivity("extReportRoleLogin", id, level, nickname, sid, serverName);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 角色数据上报
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="logType">场景(1 - 进入游戏、2 - 创建角色、3 - 角色升级、4 - 退出、5 - 充值)</param>
|
|
|
|
+ /// <param name="id">角色ID</param>
|
|
|
|
+ /// <param name="level">角色等级</param>
|
|
|
|
+ /// <param name="nickname">角色名称</param>
|
|
|
|
+ /// <param name="sid">区服ID</param>
|
|
|
|
+ /// <param name="serverName">区服名称</param>
|
|
|
|
+ public void ReportRole(int logType, string id, string level, string nickname, string sid, string serverName)
|
|
|
|
+ {
|
|
|
|
+ Instance.CallDouYouMainActivity("extReportRole", logType, id, level, nickname, sid, serverName);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 退出登录
|
|
|
|
+ /// </summary>
|
|
|
|
+ public void ShowLogout()
|
|
|
|
+ {
|
|
|
|
+ Instance.CallDouYouMainActivity("extShowLogout");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 退出app
|
|
|
|
+ /// </summary>
|
|
|
|
+ public void ExitApp()
|
|
|
|
+ {
|
|
|
|
+ Instance.CallDouYouMainActivity("extExitApp");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 调起支付
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="orderId">订单号</param>
|
|
|
|
+ /// <param name="orderMoney">订单金额(元)</param>
|
|
|
|
+ /// <param name="productId">产品ID</param>
|
|
|
|
+ /// <param name="productName">产品名称</param>
|
|
|
|
+ /// <param name="productDesc">产品描述</param>
|
|
|
|
+ /// <param name="roleServiceId">区服ID</param>
|
|
|
|
+ /// <param name="serviceName">区服名称</param>
|
|
|
|
+ /// <param name="roleId">角色ID</param>
|
|
|
|
+ /// <param name="roleName">角色名称</param>
|
|
|
|
+ /// <param name="roleLevel">角色等级</param>
|
|
|
|
+ /// <param name="other">透传参数</param>
|
|
|
|
+ public void ShowSwitchPayment(string orderId, string orderMoney, string productId, string productName,
|
|
|
|
+ string productDesc, string roleServiceId, string serviceName, string roleId, string roleName,
|
|
|
|
+ string roleLevel, string other)
|
|
|
|
+ {
|
|
|
|
+ Instance.CallDouYouMainActivity("extShowSwitchPayment", orderId, orderMoney, productId, productName,
|
|
|
|
+ productDesc, roleServiceId, serviceName, roleId, roleName, roleLevel, other);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// cp激励广告订单id 登录后用户uid 角色id
|
|
|
|
+ /// </summary>
|
|
|
|
+ public void OpenGroMoreAD()
|
|
|
|
+ {
|
|
|
|
+ Instance.CallDouYouMainActivity("extOpenGroMoreAD");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public class DouYouSDKHandler : AbDouYouSDKHandler
|
|
|
|
+ {
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 测试消息
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="message"></param>
|
|
|
|
+ public override void ReceiveMessageAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"ReceiveMessageAb:{message}");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// SDK实例化成功
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="message">SDK 实例化成功</param>
|
|
|
|
+ public override void InitSuccessAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log("InitSuccessAb: " + message);
|
|
|
|
+ UniEvent.SendMessage(new LauncherEvent.InitPlatformResult() { success = true });
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 登录成功
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="message">resUid + "|gfg|" + token</param>
|
|
|
|
+ public override void LoginSuccessAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log("LoginSuccessAb: " + message);
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.LoginSuccessAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 切换账号或退出登录后
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="message">退出登录成功!</param>
|
|
|
|
+ public override void OutLoginSuccessAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log("OutLoginSuccessAb: " + message);
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.OutLoginSuccessAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 支付失败
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="message">code + "|gfg|" + params.toString()</param>
|
|
|
|
+ public override void PayFailAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log("PayFailAb: " + message);
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.PayFailAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 支付成功
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="message">code + "|gfg|" + params.toString()</param>
|
|
|
|
+ public override void PaySuccessAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log("PaySuccessAb" + message);
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.PaySuccessAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ #region SDK 生命周期函数
|
|
|
|
+
|
|
|
|
+ public override void SdkOnStartAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnStartAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnStartAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnPauseAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnPauseAb:{message}");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnResumeAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnResumeAb:{message}");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnStopAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnStopAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnStopAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnDestroyAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnDestroyAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnDestroyAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnRestartAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnRestartAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnRestartAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnBackPressedAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnBackPressedAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnBackPressedAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnNewIntentAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnNewIntentAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnNewIntentAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnConfigurationChangedAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnConfigurationChangedAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnConfigurationChangedAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnSaveInstanceStateAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnSaveInstanceStateAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnSaveInstanceStateAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnActivityResultAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnActivityResultAb:{message}");
|
|
|
|
+ QDDouYouManagerInit.Instance.douYouSDKListener.SdkOnActivityResultAb(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnRequestPermissionResultAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnRequestPermissionResultAb:{message}");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public override void SdkOnWindowFocusChangedAb(string message)
|
|
|
|
+ {
|
|
|
|
+ Debug.Log($"SdkOnWindowFocusChangedAb:{message}");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ #endregion
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 场景(1 - 进入游戏、2 - 创建角色、3 - 角色升级、4 - 退出、5 - 充值)
|
|
|
|
+ /// </summary>
|
|
|
|
+ public enum DouYouRoleLogReportType
|
|
|
|
+ {
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 进入游戏
|
|
|
|
+ /// </summary>
|
|
|
|
+ EnterGame = 1,
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 创建角色
|
|
|
|
+ /// </summary>
|
|
|
|
+ CreateRole = 2,
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 角色升级
|
|
|
|
+ /// </summary>
|
|
|
|
+ LevelUp = 3,
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 退出
|
|
|
|
+ /// </summary>
|
|
|
|
+ ExitGame = 4,
|
|
|
|
+
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 充值
|
|
|
|
+ /// </summary>
|
|
|
|
+ Pay = 5
|
|
|
|
+ }
|
|
|
|
+}
|