# Conflicts: # Assets/Resources/UI/Prefab/Panel/Mobile/DevicePanel.prefab # Assets/Scenes/Login-Mobile.unity # Assets/Scenes/Login.unity # Assets/Scripts/App.cs # Assets/Scripts/Editor.meta # Assets/Scripts/Scenes/Ride/Scripts/CyclingController.cs
100 lines
2.9 KiB
C#
100 lines
2.9 KiB
C#
using Assets.Scenes.Ride.Scripts;
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using UnityEngine;
|
|
|
|
namespace Assets.Scripts.Scenes
|
|
{
|
|
public abstract class BaseScene: MonoBehaviour
|
|
{
|
|
UnityEngine.Ping ping;
|
|
bool isNetWorkLose = false;
|
|
protected virtual void Awake()
|
|
{
|
|
Debug.Log("base scene awake");
|
|
Application.logMessageReceived += Application_logMessageReceived;
|
|
StopCoroutine("Ping");
|
|
StartCoroutine(Ping());
|
|
}
|
|
|
|
private IEnumerator Ping()
|
|
{
|
|
while (true)
|
|
{
|
|
ping = new Ping("47.97.84.8");
|
|
yield return new WaitForSeconds(5);
|
|
}
|
|
}
|
|
|
|
private void Application_logMessageReceived(string condition, string stackTrace, LogType type)
|
|
{
|
|
//Debug.Log("application log");
|
|
if (type == LogType.Error || type == LogType.Exception)
|
|
{
|
|
string log = $"time:{ System.DateTime.Now.ToString() }\r\n";
|
|
log += $"type:{ type }\r\n";
|
|
log += $"msg:{ condition }\r\n";
|
|
log += $"stack trace:{ stackTrace }\r\n";
|
|
System.IO.File.AppendAllText($"{PFConstants.LogFolder}\\{ System.DateTime.Now.ToString("yyyy-MM-dd") }.txt", log);
|
|
|
|
//Debug.Log(PFConstants.LogFolder);
|
|
}
|
|
}
|
|
|
|
private void OnApplicationQuit()
|
|
{
|
|
MapUDPService.Dispose();
|
|
App.MainDeviceAdapter.Dispose();
|
|
}
|
|
|
|
private void OnDestroy()
|
|
{
|
|
var objAry = Resources.FindObjectsOfTypeAll<Material>();
|
|
|
|
for (int i = 0; i < objAry.Length; ++i)
|
|
{
|
|
objAry[i] = null;//解除资源的引用
|
|
}
|
|
var objAry2 = Resources.FindObjectsOfTypeAll<Texture>();
|
|
for (int i = 0; i < objAry2.Length; ++i)
|
|
{
|
|
objAry2[i] = null;//解除资源的引用
|
|
}
|
|
Resources.UnloadUnusedAssets();
|
|
GC.Collect();
|
|
}
|
|
|
|
private void OnApplicationPause(bool focus)
|
|
{
|
|
if (focus)
|
|
{
|
|
Debug.Log("我休眠了");
|
|
}
|
|
else
|
|
{
|
|
UIManager.InitNow();//重置当前时间
|
|
}
|
|
}
|
|
protected virtual void Update()
|
|
{
|
|
if (Application.internetReachability == NetworkReachability.NotReachable)
|
|
{
|
|
isNetWorkLose = true;
|
|
App.delayTime = -1;
|
|
}
|
|
else if (null != ping && ping.isDone)
|
|
{
|
|
isNetWorkLose = false;
|
|
App.delayTime = ping.time;
|
|
//Debug.Log(App.delayTime);
|
|
ping.DestroyPing();
|
|
ping = null;
|
|
}
|
|
}
|
|
}
|
|
}
|