77 lines
1.7 KiB
C#
77 lines
1.7 KiB
C#
using System.Collections;
|
|
using System.Diagnostics;
|
|
using UnityEngine;
|
|
using UnityEngine.Networking;
|
|
#if UNITY_EDITOR
|
|
using UnityEditor;
|
|
#endif
|
|
|
|
[InitializeOnLoad]
|
|
public class EncryptionDongleClient : MonoBehaviour
|
|
{
|
|
public static string licenseID = "xiaofangid";
|
|
private static string serverURL = "http://shu.sheziwanglo.cn:5001/validate";
|
|
|
|
static EncryptionDongleClient()
|
|
{
|
|
if (!UnityEngine.Application.isPlaying)
|
|
{
|
|
ValidateLicense();
|
|
}
|
|
}
|
|
|
|
public static void ValidateLicense()
|
|
{
|
|
EditorApplication.update += ValidateLicenseStep;
|
|
}
|
|
|
|
private static UnityWebRequest request;
|
|
|
|
private static void ValidateLicenseStep()
|
|
{
|
|
if (request == null)
|
|
{
|
|
string url = $"{serverURL}?licenseID={licenseID}";
|
|
|
|
request = UnityWebRequest.Get(url);
|
|
request.SendWebRequest();
|
|
}
|
|
|
|
if (!request.isDone)
|
|
{
|
|
return;
|
|
}
|
|
|
|
if (request.result == UnityWebRequest.Result.ConnectionError || request.result == UnityWebRequest.Result.ProtocolError)
|
|
{
|
|
|
|
#if UNITY_EDITOR
|
|
EditorApplication.Exit(0);
|
|
#endif
|
|
}
|
|
else if (request.responseCode == 200)
|
|
{
|
|
}
|
|
else if (request.responseCode == 401)
|
|
{
|
|
#if UNITY_EDITOR
|
|
EditorApplication.Exit(0);
|
|
#endif
|
|
}
|
|
else if (request.responseCode == 404)
|
|
{
|
|
#if UNITY_EDITOR
|
|
EditorApplication.Exit(0);
|
|
#endif
|
|
}
|
|
else
|
|
{
|
|
#if UNITY_EDITOR
|
|
EditorApplication.Exit(0);
|
|
#endif
|
|
}
|
|
|
|
EditorApplication.update -= ValidateLicenseStep;
|
|
}
|
|
}
|