업데이트 후에 PlayerPrefs 의 정보가 날아가는 이슈 발생 !
으악!! 또 뭐가 잘못된거야 ㅠ_ㅠ…
테스트 해보니
void Main()
{
Application.Quit()// 대신에
//잘 모르는 함수였던
System.Diagnostics.Process.GetCurrentProcess().Kill(); // 이걸 쓴게 화근이었다.
}
Unity 의 로컬 저장으로 편리한 기능을 제공하는 PlayerPrefs는
temp 로 데이터를 들고 있다가 , Application.Quit() 이 호출 될 때
PlayerPrefs.Save() 가 발동 되는 개념이다.
따라서 , 매번 Process.Kill() 을 사용하면 저장되지 않았던 정보들이 날아가기도 하는 것이다.
해결 방법은 다음과 같다.
- 그냥 원래대로 Application.Quit() 쓰자.
- 적당한 타이밍에 PlayerPrefs.Save() 를 수동으로 콜해준다. ( 매번이 아닌 이유는 성능상의 이슈가 있다고 메뉴얼에 적혀있다 . 애초에 수동으로 부르는 게 권장이 아님 )