๐ถ Xcode์์ ๋น๋ ํ์ผ๋ ์ ์ด๋ ธ๊ณ , ์์ดํฐ ์ฐ๊ฒฐ๋ ์ ๋์ด.
๐พ ๐๐๐
๐ถ ๊ทธ๋ฐ๋ฐ ๊ฐ์๊ธฐ ๋ก๋ฉ ํ๋ฉด์์ ๋ค์ ์ฌ์ผ๋ก ์ ๋์ด๊ฐ๋ค..? ์ด๊ฑฐ ๋ถ๋ช ์๋ฌ ๋ก๊ทธ ๋ด์ ๊ฑด๋ฐ ์์ดํฐ ํ๊ฒฝ์์ ๋๋ฒ๊น ์ ์ด๋ป๊ฒ ํด์ผ ํ์ง?
๐พ Instrument ์ฐ๋ผ๋ ์๊ธฐ๋ ์๊ณ , Xcode ์์ฒด ๋ก๊ทธ ๋ณด๋ผ๋ ๊ธ๋ ์์ด.
๐ถ ๊ธฐ๊ธฐ์์ ๋ฐ๋ก ๋ณด๊ณ ์ถ์๋ฐ..
๐พ ์ค ๊ทธ๋ฅ ์คํฌ๋ฆฝํธ ๋ถ์ฌ์ ์จ๋ ๋๋.
๐ถ iOS ๋๋ฒ๊น ์ฉ์ผ๋ก don't destroy ์ค๋ธ์ ํธ ํ๋ ๋ง๋ค์ด์ ๋ก๊ทธ ์ถ๋ ฅ์ฉ์ผ๋ก ์จ์ผ๊ฒ ๋ค.
#if UNITY_IOS
using System.Collections;
using UnityEngine;
namespace Utility_For_iOS
{
public class LogOnScreen : MonoBehaviour
{
public uint maxLogCount = 15; // number of messages to keep
public int fontSize = 30;
private readonly Queue _myLogQueue = new();
private void OnEnable()
{
Application.logMessageReceived += HandleLog;
}
private void OnDisable()
{
Application.logMessageReceived -= HandleLog;
}
private void HandleLog(string logString, string stackTrace, LogType type)
{
_myLogQueue.Enqueue("[" + type + "] " + logString);
if (type == LogType.Exception) _myLogQueue.Enqueue(stackTrace);
while (_myLogQueue.Count > maxLogCount)
_myLogQueue.Dequeue();
}
private void OnGUI()
{
GUI.skin.label.fontSize = fontSize;
GUILayout.BeginArea(new Rect(0, 0, Screen.width, Screen.height));
GUILayout.Label("\n" + string.Join("\n", _myLogQueue.ToArray()));
GUILayout.EndArea();
}
}
}
#endif
๐ถ ์ ์์ํ๋ค!!

๐พ ๋ก๊ทธ๊ฐ ๋ฌด์จ ๋ด์ฉ์ธ๊ฐ?
๐ถ ์ ์ ๋ฒ๋ค ๊ด๋ จ ์ค๋ฅ์ธ๋ฐ... ์, ์ด๋๋ ์๋ธ ๋น๋๋ฅผ ์๋๋ก์ด๋ ๋ฒ์ ๋ง ํด์ ์ฌ๋ ธ์์์. ใ ใ ใ ๊น์ง์ด์ผ

๐ถ ์์ดํฐ ๋ฒ์ ๋ ๋น๋ํด์ ์ฌ๋ ค์ผ์ง.

๐ถ ์๋ฃ!
