58 lines
1.7 KiB
C#
58 lines
1.7 KiB
C#
#if UNITY_5_6_OR_NEWER
|
||
|
||
namespace XLua
|
||
{
|
||
using UnityEngine;
|
||
using UnityEditor;
|
||
using System.Net.Sockets;
|
||
using System.Text;
|
||
using System.Threading;
|
||
|
||
[InitializeOnLoad]
|
||
public class Report
|
||
{
|
||
private const string PREFS_KEY = "XLuaReport";
|
||
private const string DIALOG_MSG_FORMAT = @"我们非常注重您的隐私权,需要收集以下必要信息以提供更好的服务:
|
||
|
||
XLua版本:{0}
|
||
引擎版本:{1}
|
||
设备标识:{2}
|
||
|
||
We attach great importance to your privacy and need to collect the following necessary information to provide better services:
|
||
|
||
XLua Version: {0}
|
||
Unity Version: {1}
|
||
Device Identifier: {2}";
|
||
|
||
static Report()
|
||
{
|
||
if (EditorPrefs.HasKey(PREFS_KEY) && !EditorPrefs.GetBool(PREFS_KEY))
|
||
return;
|
||
|
||
var version = "2.1.16";
|
||
var engine = Application.unityVersion;
|
||
var machine = SystemInfo.deviceUniqueIdentifier;
|
||
var msg = string.Format("cmd=0&tag=glcoud.xlua.report&version={0}&engine={1}&machine_name={2}", version, engine, machine);
|
||
|
||
if (!EditorPrefs.HasKey(PREFS_KEY))
|
||
{
|
||
var dialogMsg = string.Format(DIALOG_MSG_FORMAT, version, engine, machine);
|
||
var result = EditorUtility.DisplayDialog(string.Empty, dialogMsg, "允许 Allow", "拒绝 Deny");
|
||
EditorPrefs.SetBool(PREFS_KEY, result);
|
||
if (!result)
|
||
return;
|
||
}
|
||
|
||
new Thread(() =>
|
||
{
|
||
var data = Encoding.UTF8.GetBytes(msg);
|
||
var client = new UdpClient();
|
||
client.Send(data, data.Length, "101.226.141.148", 8080);
|
||
client.Close();
|
||
}).Start();
|
||
}
|
||
}
|
||
}
|
||
|
||
#endif
|