목록프로그래밍/ㄴ이슈 (35)
출시 준비를 위해 SDK연동작업을 해야했다. 이왕이면 최신 버전의 SDK를 사용하기 위해 Unity 2019.2.15f에서 2020.1.3f버전으로 업그레이드를 하고, sdk작업을 진행하려고 했다 하지만 2020.1.3f는 다른 sdk들과 firebase sdk 충돌 문제가 발생, 결국 정상 구동이 검증된 unity 2020.3.15f버전으로 다운그레이드를 했다. 그리고 프로젝트가 망가졌다. 프로젝트의 import과정에서 library packagecache를 정상적으로 생성하지 못하는 문제가 발생했다. 핵심 에러들은 다음과 같다 Google.versionhandler.dll을 포함한 다음의 dll들이 load되지 않는것이었다 Assembly 'Assets/Plugins/UnityPurchasing/Bi..
GPGS서비스를 이용해 세이브/로드를 구현하는 중 다음과 같은 에러가 발생했다 2020-09-09 14:13:06.213 16824 16880 Info Unity [Play Games Plugin 0.10.10] 09/09/20 14:13:06 +09:00 DEBUG: InternalOpen has failed: com.google.android.gms.common.api.ApiException: 10: IllegalStateException: Must include Drive.SCOPE_APPFOLDER to use snapshots! SavedGameRequestStatus에서 반환된 에러 코드는 InternalError이다. 무엇이 문제인지 살펴보았다. 1. 플러그인 세팅하는 부분에 EnableSa..
Unity에서 현재 실쟁중인 플랫폼은 다음과 같이 가져와서 식별해낼 수 있다 Application.platform == RuntimePlatform.IPhonePlayer || Application.platform == RuntimePlatform.Android RuntimePlatform에 다양한 플랫폼이 있으니 참고
2020.1.3f버전으로 유니티를 업그레이드 하고 나니 다음과 같은 파이어 베이스 에러 로그가 발생했다 Unity Failed to read Firebase options from the app's resources. Either make sure google-services.json is included in your build or specify options explicitly. Firebase app creation failed 빌드 까지는 문제없이 진행되나, 파이어베이스 인스턴스를 생성할 때 위와 같은 문제가 발생한다. 유니티 2020과 신규 firebase버전이 충돌하며 발생하는 문제같아 보인다. 특정 경로에 googleservices.xml파일을 생성하지 못하거나, 해당 경로에서 파일을 읽어..
Google Play Services 추가 후 인증 요청에서 다음과 같은 에러가 발생했다 (빌드는 성공, 로그캣에서 오류 추적) Error Unity AndroidJavaException: java.lang.ClassNotFoundException: com.google.android.gms.games.Games 해결 방법은 다음과 같다 1. Minify Release : Proguard 2. Minify Dubug. : Proguard 3. 빌드세팅, 플레이어세팅/퍼블리싱 세팅에서 'user proguard file' 체크 하여 활성화 proguard-user.txt에 다음의 내용 추가 출처 : https://github.com/playgameservices/play-games-plugin-for-uni..
사용 유니티 버전 : 2020.1.3f 빌드 퍼블리싱 세팅에서 custom android manifest 체크 하여 활성화 한 상태에서 기본 구글 샘플 프로젝트를 빌드하니 다음과 같은 에러가 발생했다 The minSdk version should not be declared in the android manifest file. You can move the version from the manifest to the defaultConfig in the build.gradle file. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&) 해결 방법은 유니티 프로젝트의 기본 AndroidManifest 파일을 제외한 모든 매니페스트에 있는 위와 같은 ..
출시 준비를 하기 위해 SDK들을 모두 최신 버전으로 설치하고자 유니티 2020.1.3f 버전으로 업데이트 후 SDK작업을 진행하였다 아래는 그때 발생한 빌드 에러 중 하나이다 > Could not delete old C:...\Temp\gradleOut\launcher\build\reports\lint-results-release-fatal.html UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&) 해당 오류의 발생 사유는 첫번째 빌드가 실패 후, 다시 빌드를 시도하였을 때 특정 프로세스가 전 빌드에서 발생된 temp경로의 파일 중 하나를 사용중에 있어 그렇다 해결 방법은 1. 컴퓨터를 리부팅 한다 2. 직접 해당 경로에 들어가 관리자 권한으로..
2019.2.15f버전 기준 발생한 이슈에 대해 공유합니다. 몬스터를 피격시 몬스터의 머리 위에 TextMeshPro로 체력을 표기해주도록 하고 있습니다. 기본적으론, 체력이 보이지 않다가 피격을 당하면 그때 체력바를 Enable해 표기해줍니다. 이때, 씬전환 후 최초로 TextMeshPro를 Enable하는 경우, PlayerLoop의 점유율이 80%가량 치솟으며, 아주 짧게 렉을 유발했습니다. 원인을 살펴본 결과, TextMeshPro의 Activate와 함께 다량의 GC콜이 발생하는 것을 확인했습니다. 일단 임시방편으로 해결을 위해 씬에 빈 TextMeshPro 객체를 하나 두어, 장면 전환시 미리 Text객체가 로딩되도록 해주었습니다.