AgreementView.cs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. using UnityEngine.Networking;
  6. /* 界面-用户协议和隐私政策 */
  7. public class AgreementView : MonoBehaviour, MenuBackInterface
  8. {
  9. void Start()
  10. {
  11. PersistenHandler.ins?.menuBackCtr.views.Add(this);
  12. }
  13. void OnDestroy()
  14. {
  15. PersistenHandler.ins?.menuBackCtr.views.Remove(this);
  16. }
  17. public bool OnMenuBack() {
  18. Destroy(gameObject);
  19. return true;
  20. }
  21. public void EnterUserAgreement() {
  22. GetTitleText().text = TextAutoLanguage2.GetTextByKey("agreement_user");
  23. StartCoroutine(GetUserAgreement());
  24. }
  25. public void EnterPrivacyAgreement() {
  26. GetTitleText().text = TextAutoLanguage2.GetTextByKey("agreement_privacy");
  27. StartCoroutine(GetPrivacyAgreement());
  28. }
  29. Text GetTitleText() {
  30. return transform.Find("Title").GetComponent<Text>();
  31. }
  32. Text GetContentText(string id = "") {
  33. return transform.Find("ScrollView/Viewport/Content" + id).GetComponent<Text>();
  34. }
  35. public void Back() {
  36. Destroy(gameObject);
  37. }
  38. //http
  39. IEnumerator GetUserAgreement() {
  40. string url = CommonConfig.gateServerURL + "/app/getUserAgreement" + GetLanguageParam();
  41. using (UnityWebRequest request = UnityWebRequest.Get(url)) {
  42. yield return request.SendWebRequest();
  43. if (request.result == UnityWebRequest.Result.Success) {
  44. GetContentText().text = "\n" + request.downloadHandler.text;
  45. }
  46. }
  47. }
  48. IEnumerator GetPrivacyAgreement() {
  49. string url = CommonConfig.gateServerURL + "/app" + GetLanguageDir() + "/privacy-policy";
  50. using (UnityWebRequest request = UnityWebRequest.Get(url)) {
  51. yield return request.SendWebRequest();
  52. if (request.result == UnityWebRequest.Result.Success) {
  53. GetContentText().text = "\n" + request.downloadHandler.text;
  54. }
  55. }
  56. }
  57. string GetLanguageParam() {
  58. if (TextAutoLanguage2.GetLanguage() != LanguageEnum.Chinese) return "?language=en";
  59. return "";
  60. }
  61. string GetLanguageDir() {
  62. if (TextAutoLanguage2.GetLanguage() != LanguageEnum.Chinese) return "/en";
  63. return "/cn";
  64. }
  65. }