AntiAddictionMobileOldJob.cs 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. using System;
  2. using TapTap.AntiAddiction.Model;
  3. using MobileBridgeAntiAddiction = Plugins.AntiAddictionUIKit.AntiAddictionUIKit;
  4. using CheckPayResult = Plugins.AntiAddictionUIKit.CheckPayResult;
  5. namespace TapTap.AntiAddiction
  6. {
  7. public sealed class AntiAddictionMobileOldJob : IAntiAddictionJob
  8. {
  9. private Action<int, string> _externalCallback;
  10. public Action<int, string> ExternalCallback
  11. {
  12. get => _externalCallback;
  13. }
  14. public int AgeRange => MobileBridgeAntiAddiction.CurrentUserAgeLimit();
  15. /// <summary>
  16. /// 剩余时间(单位:秒)
  17. /// </summary>
  18. public int RemainingTime => MobileBridgeAntiAddiction.CurrentUserRemainTime();
  19. /// <summary>
  20. /// 剩余时间(单位:分钟)
  21. /// </summary>
  22. public int RemainingTimeInMinutes
  23. {
  24. get
  25. {
  26. int seconds = RemainingTime;
  27. if (seconds <= 0)
  28. return 0;
  29. return UnityEngine.Mathf.CeilToInt(seconds / 60.0f);
  30. }
  31. }
  32. public string CurrentToken => MobileBridgeAntiAddiction.CurrentToken();
  33. private bool useTapLogin;
  34. public void Init(AntiAddictionConfig config, Action<int, string> callback)
  35. {
  36. _externalCallback = callback;
  37. useTapLogin = config.useTapLogin;
  38. MobileBridgeAntiAddiction.Init(config.gameId, true, true, config.showSwitchAccount
  39. , (data) => callback?.Invoke(data.code, null)
  40. , (data) => callback?.Invoke(-1, data));
  41. }
  42. public void Startup(string userId)
  43. {
  44. MobileBridgeAntiAddiction.Startup(useTapLogin, userId);
  45. }
  46. public void Exit()
  47. {
  48. MobileBridgeAntiAddiction.Logout();
  49. }
  50. public void EnterGame()
  51. {
  52. MobileBridgeAntiAddiction.EnterGame();
  53. }
  54. public void LeaveGame()
  55. {
  56. MobileBridgeAntiAddiction.LeaveGame();
  57. }
  58. public void CheckPayLimit(long amount, Action<CheckPayResult> handleCheckPayLimit, Action<string> handleCheckPayLimitException)
  59. {
  60. MobileBridgeAntiAddiction.CheckPayLimit(amount, handleCheckPayLimit, handleCheckPayLimitException);
  61. }
  62. public void SubmitPayResult(long amount, Action handleSubmitPayResult, Action<string> handleSubmitPayResultException)
  63. {
  64. MobileBridgeAntiAddiction.SubmitPayResult(amount, handleSubmitPayResult, handleSubmitPayResultException);
  65. }
  66. public bool isStandalone()
  67. {
  68. return MobileBridgeAntiAddiction.isStandalone();
  69. }
  70. }
  71. }