Android Reverse Unity on Android
안녕하세요.
http://www.slideshare.net/williamyang3910/unitekorea2013-protecting-your-android-content-21713675
핵심은 Unity 가 C# 코드 변환에 MONO를 사용하는게 맞네요.
제가 하는 게임 중 MOD된 부분이 2개가 서로 다른 것 같기에 분석을 진행 하면서
Android 구조를 본의 아니게 다 뒤지게 되었네요.
관심있던 분야라서 크게 나쁘지는 않았지만, 갑갑하긴 했습니다.
Mono 쪽은 저 역시 관심을 두고 있던 부분인데, 이런 실험적인 방법을 unity에서 도입해서 C#과 연동을 시킬줄은 몰랐네요.
추후 최적화는 아마 Google쪽에 위임을 하던지, 같이 하던지 뭐 이런 방식으로 최적화 시킬 요량인가 봅니다.
점점 프로세서가 빨라지니 최초 expensive한 bytecode load같은것들은 고려 대상이 아닌듯 싶네요.
..
일단 작업을 하기 전에 ByteCode Decompiler는 다 설치 했나 봅니다.
Dex2jar, DotPeek(jetbrain)
핵심 부분은 아래와 같습니다.
즉 이렇게 될 경우 매번 amountOfCoins가 호출 될때마다 위와 같은 숫자가 호출이 되네요.
Save파일을 수정해서 onCreate 될 때 매번 압축을 푸는 방식과,
이처럼 직접 Dll을 수정해서 처리 하는 방식 2가지가 존재 하네요.
추후 어디서부터 이 함수가 호출되나 따라 가 보는것도 잼있을꺼 같습니다.
현재로서는 계산 로직이라든지, 간단한 부분은 dll에서 참조 해서 사용한다고 보면 됩니다.
참고로 assets에 Managed 부분입니다.
감사 합니다.
'관련자료' 카테고리의 다른 글
부동산 실거래가 관련 자료. (0) | 2015.01.31 |
---|---|
Android Multiple Activity (0) | 2015.01.31 |
Android App Hacking – Hero Defense (0) | 2015.01.26 |
Android APK Downloader (0) | 2015.01.26 |
Android subway surfer reverse 결과 (0) | 2015.01.26 |