YouYiSDKiOS.cs 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. #if UNITY_IOS
  2. using System.Runtime.InteropServices;
  3. using System.Collections;
  4. using System.Collections.Generic;
  5. using UnityEngine;
  6. using System.Runtime.InteropServices;
  7. using quicksdk;
  8. public class YouYiSDKiOS : SDKBase
  9. {
  10. private YouYiListener m_YouYiListener;
  11. public QKGame qKGamesdk;
  12. private LoginKitListener qkListenter;
  13. public YouYiSDKiOS()
  14. {
  15. SDKName = "SDKYOUYI_IOS";
  16. m_YouYiListener = SDKMgr.Instance.gameObject.AddComponent<YouYiListener>();
  17. qkListenter = SDKMgr.Instance.gameObject.AddComponent<LoginKitListener>();
  18. qKGamesdk = new QKGame();
  19. //YouYi_SetCallbackGoName(SDKMgr.Instance.gameObject.name);
  20. qkListenter.InitListener(m_YouYiListener);
  21. qKGamesdk.loginKitSetListener(qkListenter);
  22. }
  23. public override void Init()
  24. {
  25. base.Init();
  26. //YouYi_Init();
  27. if (QKGame.InitState == QKSDKInitState.Success)
  28. {
  29. CallInitSuccessCB();
  30. return;
  31. }
  32. QKGame.txQKInit();
  33. }
  34. public override void OnApplicationFocus(bool focusStatus)
  35. {
  36. base.OnApplicationFocus(focusStatus);
  37. }
  38. public override void Login()
  39. {
  40. //YouYi_Login();
  41. QKGame.txQKLogin(true);
  42. }
  43. public override void Logout()
  44. {
  45. //YouYi_Logout();
  46. QKGame.txQKLogout();
  47. }
  48. public override void SwitchAccount()
  49. {
  50. //YouYi_SwitchAccount();
  51. }
  52. public override void Pay(int goodsId, string goodsName, string goodsDesc, int count, float amount, string cpOrderId, string extrasParams)
  53. {
  54. GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
  55. string key = amount.ToString("f2");
  56. ProductInfo info;
  57. qKGamesdk.ProductInfos.TryGetValue(key, out info);
  58. if (gameRoleInfo == null || !gameRoleInfo.Valid() || info == null)
  59. {
  60. Debug.LogError("[YISDK][Pay] GameRoleInfo is null or not valid !!!");
  61. m_YouYiListener.OnPayFailed();
  62. return;
  63. }
  64. //YouYi_Pay(cpOrderId, goodsId.ToString(), goodsName, gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), gameRoleInfo.serverId.ToString(), gameRoleInfo.serverName, amount.ToString(), extrasParams);
  65. Debug.Log($"=========================={info.ID}======={info.Name}");
  66. QKGame.txQKCongzi(info.ID, info.Name, amount.ToString(), cpOrderId, goodsName, extrasParams);
  67. }
  68. public override void CreateRole()
  69. {
  70. GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
  71. if (gameRoleInfo == null || !gameRoleInfo.Valid())
  72. {
  73. Debug.LogError("[YISDK][CreateRole] GameRoleInfo is null or not valid !!!");
  74. return;
  75. }
  76. //YouYi_CreateRoleReportData(gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), gameRoleInfo.serverId.ToString(), gameRoleInfo.serverName, gameRoleInfo.openServerTime.ToString());
  77. QKGame.txQKSetRoleInfo(gameRoleInfo.serverName,gameRoleInfo.serverId.ToString(),gameRoleInfo.roleId.ToString(),gameRoleInfo.roleName,gameRoleInfo.roleLv.ToString(),"0");
  78. }
  79. public override void EnterGame()
  80. {
  81. GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
  82. if (gameRoleInfo == null || !gameRoleInfo.Valid())
  83. {
  84. Debug.LogError("[YISDK][EnterGame] GameRoleInfo is null or not valid !!!");
  85. return;
  86. }
  87. QKGame.txQKSetRoleInfo(gameRoleInfo.serverName, gameRoleInfo.serverId.ToString(), gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), "0");
  88. //YouYi_RoleEnterGameReportData(gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), gameRoleInfo.serverId.ToString(), gameRoleInfo.serverName, gameRoleInfo.openServerTime.ToString());
  89. }
  90. public override void UpdateRoleLv()
  91. {
  92. GameRoleInfo gameRoleInfo = SDKMgr.Instance.GetGameRoleInfo();
  93. if (gameRoleInfo == null || !gameRoleInfo.Valid())
  94. {
  95. Debug.LogError("[YISDK][UpdateRoleLv] GameRoleInfo is null or not valid !!!");
  96. return;
  97. }
  98. QKGame.txQKSetRoleInfo(gameRoleInfo.serverName, gameRoleInfo.serverId.ToString(), gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), "0");
  99. //YouYi_RoleUpLevelReportData(gameRoleInfo.roleId.ToString(), gameRoleInfo.roleName, gameRoleInfo.roleLv.ToString(), gameRoleInfo.serverId.ToString(), gameRoleInfo.serverName, gameRoleInfo.openServerTime.ToString());
  100. }
  101. public override void ExitGame()
  102. {
  103. }
  104. public override bool Exit()
  105. {
  106. return false;
  107. }
  108. public override bool Quit()
  109. {
  110. return false;
  111. }
  112. public override void CallInitSuccessCB()
  113. {
  114. m_YouYiListener.OnInitSuccess();
  115. }
  116. public override void CallLoginSuccessCB()
  117. {
  118. m_YouYiListener.StartCheckLogin();
  119. }
  120. //[DllImport("__Internal")]
  121. //private static extern void YouYi_SetCallbackGoName(string callbackGoName);
  122. //[DllImport("__Internal")]
  123. //private static extern void YouYi_Init();
  124. //[DllImport("__Internal")]
  125. //private static extern void YouYi_Login();
  126. //[DllImport("__Internal")]
  127. //private static extern void YouYi_Logout();
  128. //[DllImport("__Internal")]
  129. //private static extern void YouYi_SwitchAccount();
  130. //[DllImport("__Internal")]
  131. //private static extern void YouYi_Pay(string cpOrderId, string goodsId, string goodsName, string roleId, string roleName, string roleLevel, string serverId, string serverName, string amount, string extrasParams);
  132. //[DllImport("__Internal")]
  133. //private static extern void YouYi_CreateRoleReportData(string roleId, string roleName, string roleLevel, string serverId, string serverName, string serverStartTime);
  134. //[DllImport("__Internal")]
  135. //private static extern void YouYi_RoleEnterGameReportData(string roleId, string roleName, string roleLevel, string serverId, string serverName, string serverStartTime);
  136. //[DllImport("__Internal")]
  137. //private static extern void YouYi_RoleUpLevelReportData(string roleId, string roleName, string roleLevel, string serverId, string serverName, string serverStartTime);
  138. }
  139. #endif