안녕하세요 개발자님
Backend.AsyncPoll()
함수의 경우
서버에 응답을 받은 후 비동기 함수의 콜백 함수를 실행시키는 함수로,
해당 함수에서 NullReferenceException 이 발생한다면,
등록한 콜백 함수에서 NullReferenceException 이 발생하신 것 입니다.
해당 부분은 콜백 함수에서 NullReferenceException 이 발생하는 부분이 있는지 확인 부탁드립니다.
서버가 다시 연결된 이후라는 것이 NullReferenceException 이 발생한 요청 다음에 보낸 요청은 성공했다는 의미가 맞으실까요?
우선 데이터 저장의 경우 비동기 서버에 요청을 보내는 것 이기에,
연결이 끊어지는 개념이 존재하지 않고 요청이 성공/실패하는 것만 존재합니다.
말씀하신 부분을 종합적으로 보았을 때
요청이 실패한 경우 NullReferenceException 이 발생하고, 그 다음 요청은 성공한 것으로 보이는데요,
요청이 실패한 경우에는 동일한 요청을 다시 한번 서버로 요청하고,
개발자님이 정한 횟수 (ex 3번) 이상 계속 실패를 한다면 게임을 종료하거나 게임을 메인화면으로 이동시키는 등의 로직이 필요합니다.
로그의 경우에도 동일합니다.
다만 하루치가 보이지 않는다는 것은 로그를 저장하는 요청을 남기지 않았거나
혹은
잘못된 요청을 보내거나 엑세스토큰이 만료된 경우 로그가 저장되지 않을 수 있습니다.
마지막으로
한번 로그인 된 계정의 엑세스토큰은 24시간 동안만 유효하며
그 시간이 지나면 엑세스 토큰이 만료되어 모든 요청은 실패하게 됩니다.
그렇기에 방치형 게임으로 계속 게임을 켜놓는 구조시라면
주기적으로 토큰을 갱신하여 엑세스토큰을 유효하게 만들어야 합니다.
엑세스토큰 관련해서는 아래 개발자문서를 참고해주세요.