* Addressable 버전: 1.19.18
업데이트 전 상태
프로젝트 폴더/ServerData/Android
uiassets Bundle은 3개나 있음. 변경사항이 있을 경우 새로 생긴다.
빨간색이 최신 Bundle이며, 파란색은 이전 Budle이다. 빨간색만 있으면 얘들은 필요없다. (수정날짜 참고)
catalog_1.json을 보면 최신 번들인 빨간색 번들만 등록되어 있다.
변경 전의 catalog_1.hash의 값은 88f2b076515f861eb457dae76a5fe585 이다.
업데이트 및 빌드
테스트를 위해 uiaseets그룹의 prefab하나를 변경. (빨갛게 만들어버림)
저장하고 Build.
빌드 후의 상태
기존 파란색 대신 빨간색 번들이 하나 생겼다. 여기에 변경사항이 적용되어 있을것이다.
catalog_1.hash와 catalog_1.json파일도 새로 바뀌었다.
catalog_1.json에서 uiassets번들 경로는 새로 생긴 경로로 바뀌었다.
(서버에는 아직 안올렸으므로 저 경로에는 아무것도 없다. 카탈로그 파일도 서버에 안올렸으니 상관은 없음)
catalog_1.hash값도 새로 변경되었다.
88f2b076515f861eb457dae76a5fe585 -> 19c0f13ad6ebe5d71578098bf449f87e
서버업로드
변경된 파일 3개를 서버에 업로드
적용 확인
private void GetServerBundleSize()
{
Addressables.GetDownloadSizeAsync(assetLabel.labelString).Completed +=
(AsyncOperationHandle<long> SizeHandle) =>
{
OnGetServerBundleSize(SizeHandle.Result);
Addressables.Release(SizeHandle);
};
}
private void OnGetServerBundleSize(long size)
{
string sizeText = string.Concat(size, " byte");
if(size == 0) {
LoadLoginScene();
}else {
DownloadBundle();
}
}
private void DownloadBundle()
{
downloadHandle = Addressables.DownloadDependenciesAsync(assetLabel.labelString);
StartCoroutine(ShowProgress());
downloadHandle.Completed +=
(AsyncOperationHandle Handle) =>
{
OnFinishDownloadBundle();
Addressables.Release(Handle);
};
}
위 코드를 통해 uiassets 번들만 업로드 되었음.
업데이트가 제대로 안될 때 (GetDownloadSizeAsync == 0)
catalog json파일이 제대로 안 올라간 경우가 있음. (서버문제 혹은 개개인의 캐쉬 문제)
분명 덮어쓰기를 해서 업로드 했지만, 경로를 열어보면 예전 이전 텍스트가 그대로 남아있다.
이 경우 업데이트가 제대로 안됨.
catalog의 json과 hash파일이 제대로 바뀌었는지 확인해본다.
'Unity > Unity 리서치' 카테고리의 다른 글
Unity 웹뷰(WebView) - 흰 화면만 뜨는 경우 (0) | 2022.03.18 |
---|---|
[Addressable] Build Mode Script (0) | 2022.02.27 |
[Addressable] Update를 위한 Method (0) | 2022.02.26 |
Google Store에 150MB이상의 aab파일 업로드 (1) | 2022.02.16 |
Unity Build결과물 용량 확인 (0) | 2022.02.14 |