DexClassLoader를 사용한 다른 패키지의 클래스 로딩
DexClassLoader를 사용하여 다른 패키지의 클래스를 로드해서 쓰는 방법이 그들 중 하나이다. 다른 패키지의 클래스를 로딩하는 데 딱히 특별한 제약 사항이 있는 건 아니므로 심지어는 preload 된 패키지의 클래스도 읽어서 쓸 수 있다.
- 64,000 개 이상의 메서드를 포함한 어플리케이션을 상상해 볼 수 있습니다. 하나의 "dex" 파일은 최대 64,000 개의 메서드만을 지원하기 때문에, 어플리케이션 빌드 시점에 문제가 발생할 수 있습니다. 이런 한계를 극복하기 위해서는 개발자는 프로그램을 여러개의 dex 파일로 나누어 작성한 후, 어플리케이션 런타임에 필요한 dex 파일을 동적으로 로딩하는 방식으로 어플리케이션을 구성할 수 있습니다.
- 런타임 중에 동적으로 기능이 확장될 수 있어야 하는 프레임워크 형태의 어플리케이션은 커스텀 클래스 로딩 기능을 활용할 수 있습니다. (대표적으로 웹서버 같은 어플을 예로 들 수 있겠네요.)
DexClassLoader를 사용한 다른 패키지의 클래스 로딩
밥 벌어 먹다 보면, 소위 말하는 어른의 사정이라는 것 때문에 별 해괴한 짓들을 하게 되곤 하는 데, DexClassLoader를 사용하여 다른 패키지의 클래스를 로드해서 쓰는 방법이 그들 중 하나이다. 다른 패키지의..
zeph1e.tistory.com
안드로이드 DexClassLoader 를 이용한 커스텀 클래스 로딩
Custom Class Loading in Dalvik [이 포스트는 Fred Chung 에 의해 작성되었습니다. — Tim Bray] Dalvik VM 은 커스텀 클래스 로딩 기능을 지원 합니다. 다빅 실행 파일인 "dex" 파일을 지정된 위치에서 로딩하는..
shloves.tistory.com
'안드로이드' 카테고리의 다른 글
리버싱 방법론 요약 (0) | 2019.04.03 |
---|---|
exported=true 설정, ContentProvider (0) | 2019.02.28 |
Resource identifier error "keyboardNavigationCluster" on build without changes to APK (0) | 2018.10.21 |
안드로이드 디버깅 (0) | 2018.06.21 |
커널 버전 확인 (0) | 2018.03.26 |