Crashlytics는 너무하다

부제: Firebase는 너무하다 크래시 리포트 서비스 사용기에서 언급했듯이 Firebase기반의 Crashlytics를 기존 프로젝트에 연동하는 것은 어렵다.  특히 리졸버를 사용하여 버젼을 관리한다는 것은 사실 구글이 어떤 생각으로 그런 것을 만들었는지 아직까지 정확히 이해를 하지 못했다.  리졸버의 취지는 물론 알 것 같다.  Android와 iOS의 관련 라이브러리들과의 dependency를 해결하고자 자동으로 혹은 수동으로 버젼을 관리해준다는 것인데, 아주 이상적으로 들리는 얘기지만, … Read moreCrashlytics는 너무하다

크래쉬 리포트 서비스 사용기

부제: Unity에서 crash 리포트 서비스 연동하기 적당한 crash 리포트 서비스을 찾아보았다.  물론, 무료가 좋다.  하지만, 무료라면 유료보다는 약간의 불편함이나 기능의 부족함을 참아야 할 것이다.  우선, Unity 내부 툴, Apteligent, Visual Studio App Center, Firebase기반의 Crashlytics을 살펴 보았다.   Unity에서 제공하는 crash 리포팅 기능은 나쁘지는 않다.  무료라는 큰 장점이 있고, 설치나 연동이 간단해서 누구나 쉽게 사용할 수 … Read more크래쉬 리포트 서비스 사용기

[iOS] iOS12에 iOS11-style 메모리 적용

iOS12에서 메모리가 뻥튀기 된 이후 애플에 소명 절차를 걸쳐 새로이 provisioning 파일을 받아 적용해보았다 (소명에 필요한 JetsamEvent log 추출은 여기 링크 참조). 뻥튀기라고 했지만 이전에 카운트 되지 않았던 메모리들이 iOS12에서 카운트되면서 늘어난 것인데(애플 메뉴얼 링크), 일부 유저 입장에서는 기존에 잘 돌아가던 앱이 업데이트 이후에 크래시가 나는 상황을 피할 수 없게 된 것이다.  몇십MB 정도라면 어느정도 … Read more[iOS] iOS12에 iOS11-style 메모리 적용

[iOS] Find JetsamEvent log

JetsamEvent log가 무엇이고, 어떻게 얻는가. 구글링을 열심히 해보니 대충 low 메모리시에 시스템이 남기는 메모리 관련 로그라는 것을 알 수 있었다. XCode와 Device에서 둘 다 추출할 수 있다고 했지만, 나의 경우는 오직 device에서만 로그를 찾을 수 있었다. ( iPhone에서 Settings > Privacy > Analytics > Analytics Data 메뉴로 들어가면 각종 로그 파일을 확인 할 수 있다. … Read more[iOS] Find JetsamEvent log

[C++] Simple Message Bus

This is about messaging system between components.  I mean that components are like sub-systems.  You can split systems into UI, Sound, Rendering, InGame, etc.  Or it can be more contents like Control, Inventory, Costume, Shop system, etc.  Whatever they are, they need to communicate each other by user inputs or any other events.   I have … Read more[C++] Simple Message Bus

[Android] 롤리팝 크래시 원인 / 메모리 관리 방식

부제: Android Lollipop Memory Bug 게임 개발을 하다보면 보통 인 게임과 아웃 게임으로 나뉘어서 리소스를 제어할 때가 많다. 아웃 게임이라고 하면 게임 코어요소를 제외한 로비나 상점, 인벤토리 같은 것을 말하고, 인 게임은 그 외에 게임의 코어한 요소(전투같은..)를 다루게 된다.  그래서 가끔 아웃 게임의 리소스를 메모리에 잔뜩 들고 있는 상태에서 인 게임에 진입하는 경우 앱이 내려가는 경우가 … Read more[Android] 롤리팝 크래시 원인 / 메모리 관리 방식

[Android] Connect Unity Profiler to Mobile Device

#유니티 프로파일러를 모바일 디바이스에 연결하기 There is a good descrption about how to remote profiling on device on Unity Manual page (Link). However, sometimes it doesn’t work like that if you miss some parts or mix the procedure.  This is easy steps you can follow. Build with option check ‘Development Build’ on Build Settings. (빌드 세팅에서 … Read more[Android] Connect Unity Profiler to Mobile Device

나에게 적합한 UML툴

나에게 적합한 UML툴을 찾는 것은 언제나 쉽지 않은 일이었다.  내가 원하는 기능이나 뷰나 느낌이나 모 그런 개인적인 것들을 툴이 모두 만족시켜줄 리가 없기 때문이다.  그렇다고 모든 UML툴을 다 써볼 수는 없는 것이고, 제한적으로 검색에 의해 혹은 랜덤하게 선택하여 혹은 회사에서 공통적으로 사용하여 (이런경우는 거의 없긴했다.) 경험하게 됐는데, IDE처럼 매일 사용하는 것이 아닌 문서 작성시 또는 … Read more나에게 적합한 UML툴

[iOS] imageIO_PNG_Data가 메모리에 상주하고 있는 이유

iOS 12버젼이 나오면서 메모리가 늘어났다는 얘기가 나와서 프로파일링을 해보았다.  여기서는 메모리가 OS업그레이드에 따라 올랐다는 내용을 다루려는 것은 아니고, 프로파일링하는 도중에 만난  imageIO_PNG_Data에 대한 이야기이다. 사용 중인 Unity버젼은 2017.4.3f1이고, 이후 버젼에 대해서는 테스트해보지 않았다. 아래의 그림은 XCode의 instrument (Allocation) 툴을 실행하여 메모리가 얼마나 사용중인지 확인중인 화면이다. (XCode의 메뉴에서 Open Developer Tool > Instrument로 실행할 수 있다.) 위 … Read more[iOS] imageIO_PNG_Data가 메모리에 상주하고 있는 이유