일부 유저들이 데이터를 로드하지 못하고 있습니다.

고객님의 문의에 답변하는 직원은 고객 여러분의 가족 중 한 사람일 수 있습니다.
고객의 언어폭력(비하, 조롱, 욕설, 협박, 성희롱 등)으로부터 직원을 보호하기 위해
관련 법에 따라 수사기관에 필요한 조치를 요구할 수 있으며, 형법에 의해 처벌 대상이 될 수 있습니다.

커뮤니티 이용 정책에 위배되는 게시물을 작성할 경우, 별도 안내 없이 게시물 삭제 또는 커뮤니티 이용이 제한될 수 있습니다.

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 뒤끝 SDK 버전 : 5.16.2
  • 프로젝트명 : 앨리스_Live
  • 스테이터스 코드 : 알 수 없음
  • 에러 코드 : 알 수 없음
  • 에러 메시지 : 알 수 없음

일부 해외 유저들에게서 리더보드 정보, 차트 테이블 데이터 로드 부분에서 오류가 나서 진입을 못하는 경우가 발생했는데 혹시 관련 이슈가 있는지 확인해주실 수 있을까요?

안녕하세요 개발자님,
문의해주신 내용과 관련하여 확인 시 특이사항이 확인되지 않고 있습니다.
문제가 발생한 유저 혹은 에러 정보를 공유해 주시면 확인하여 안내드릴 수 있도록 하겠습니다.

저희들이 테스트할때는 한번도 없었는데 해외 많은 유저들이
tableJson이 null로 넘어오고 있습니다.

            BackEnd.Content.BackendContentReturnObject broContent = null;
            BackEnd.Backend.CDN.Content.Local.Load((bro) =>
            {
                broContent = bro;
            });

            await UniTask.WaitUntil(() => broContent != null);

            if (broContent.IsSuccess() == false)
            {
                return E_RESULT.FAILED;
            }

            E_RESULT bResult = E_RESULT.SUCCESS;
            Dictionary<string, BackEnd.Content.ContentItem> dic = broContent.GetContentDictionarySortByChartName();
            foreach (var table in dic)
            {
                var tableName = table.Key;
                var tableJson = LitJson.JsonMapper.ToObject(table.Value.contentString);

                if (Managers.Table.Load(tableName, tableJson) == false)
                {
                    Debug.Log("Table Load Failed : " + tableName);
                    bResult = E_RESULT.FAILED;
                    break;
                }
            }

관련 내용 담당부서로 전달하였습니다.
빠르게 확인하여 안내드릴 수 있도록 하겠습니다.

위 오류 관련 예외처리 를 진행하였지만 여전히 유저들이 게임 접근을 못하고 있습니다.
차트 다운로드가 안되는 이슈가 발생이 되는 것 같아요.
BackEnd.Backend.CDN.Content.Local.Update 에서 차트 다운은 안되고,
IsSuccess()는 true로 넘어 오고 있는것 같아요.

아래 뒤끝 관련 크래쉬 및 차트 다운로드 코드 전달 드립니다.

Fatal Exception: java.lang.Exception: NullReferenceException : Object reference not set to an instance of an object.
at BackEnd.Functions.Content.LocalContent+d__16.MoveNext(BackEnd.Functions.Content.LocalContent+d__16)
at UnityEngine.SetupCoroutine.InvokeMoveNext(UnityEngine.SetupCoroutine)

================================================

            BackEnd.Content.BackendContentTableReturnObject broContentTable = null;
            BackEnd.Backend.CDN.Content.Table.Get(_tableId, bro =>
            {
                broContentTable = bro;
            });

            await UniTask.WaitUntil(() => broContentTable != null);

            if (broContentTable.IsSuccess() == false)
            {
                return E_RESULT.FAILED;
            }

            //
            BackEnd.Content.BackendContentReturnObject broContent = null;
            BackEnd.Backend.CDN.Content.Local.Update(broContentTable.GetContentTableItemList(), (totalCount, remainCount, downloadFile) =>
            {
                callbackProgress?.Invoke(totalCount, remainCount, downloadFile);
            }, bro =>
            {
                broContent = bro;
            });

            await UniTask.WaitUntil(() => broContent != null);

            if (broContent.IsSuccess() == false)
            {
                return E_RESULT.FAILED;
            }

            return E_RESULT.SUCCESS;

추가로저희가 인트로에서 차트, 테이블 정보 등 게임 정보를 처음 로드할 때 비동기 함수로 순차적으로 요청을 하는 방식으로 작업이 되어있고 아래 코드처럼 이 비동기 함수로 데이터를 요청 했을 때 반드시 응답이 온다고 가정하고 코드 작업을 했는데 이 요청이 누락되는 경우도 발생할 수 있을까요?

지금 확인된 사항은 디바이스 언어를 프랑스어나 인도네시아어 등등으로 바꾸면 데이터 로드 오류가 뜨는데 혹시 관련된 이슈가 발생한 케이스가 있으신가요?

        BackendReturnObject broUserInfo = null;
        Backend.BMember.GetUserInfo((bro) =>
        {
            broUserInfo = bro;
        });

        await UniTask.WaitUntil(() => broUserInfo != null);

현재 해당 문제가 발생하는 차트 정보를 공유해주실 수 있을까요?
차트 명 혹은 파일 id 정보를 공유해주시면 됩니다.

지금 확인 해본 결과 CDN의 GetContentDictionarySortByChartName 함수를 사용하면서 발생하는 이슈인 것으로 파악중입니다.

저희쪽에서 확인 한 이슈가 발생하는 디바이스 언어는 인도네시아, 프랑스, 러시아, 번체 정도 입니다.

public async UniTask<E_RESULT> TableLoad()
        {
            BackEnd.Content.BackendContentReturnObject broContent = null;
            BackEnd.Backend.CDN.Content.Local.Load((bro) =>
            {
                broContent = bro;
            });

            await UniTask.WaitUntil(() => broContent != null);

            if (broContent.IsSuccess() == false)
            {
                return E_RESULT.FAILED;
            }

            E_RESULT bResult = E_RESULT.SUCCESS;
            Dictionary<string, BackEnd.Content.ContentItem> dic = broContent.GetContentDictionarySortByChartName();
            foreach (var table in dic)
            {
                var tableName = table.Key;
                var tableJson = table.Value.contentJson;

                if (tableJson == null || tableJson.IsArray == false)
                {
                    bResult = E_RESULT.TABLE_ERROR;
                    break;
                }

                if (Managers.Table.Load(tableName, tableJson) == false)
                {
                    Debug.Log("Table Load Failed : " + tableName);
                    bResult = E_RESULT.FAILED;
                    break;
                }
            }

            return bResult;
좋아요 1

해외 발생 이슈에 따라 문화권 설정이 의심되어 인도네시아 문화권으로 설정을 통해 소수점 데이터가 있는 cdn 데이터를 다운로드 및 업데이트를 진행함 내부 테스트를 통해 오류가 발생을 확인하였으나 이상 없이 정상적으로 처리가 이루어지는 것을 확인하였습니다.

현재 뒤끝에서는 게임 내부의 로직과 데이터를 정확히 알 수 없어 분석에 어려움이 있습니다.
오류 확인 가능한 차트 데이터 전달 혹은 차트 정보를 공유해주신다면 원인 확인에 도움이 될 것으로 예상합니다.
관련한 차트 정보 공유를 요청드립니다.

확인해본 결과 저희 프로젝트가 특정 문화권 전역 설정이 안되어 있어서 소수인 자료형인 데이터를 파싱 하면서 생긴 이슈로 확인이 돼서 저희쪽 앱 업데이트 진행 했습니다…

번거롭게 하여 죄송합니다…

좋아요 1