프로젝트 소개

Tinker는 앱이 설치된 후에 수정 사항을 제공하기 위해 설계된 Android 핫픽스 솔루션입니다. 사용자가 APK를 재설치할 필요 없이 dex 파일, 네이티브 라이브러리 및 애플리케이션 리소스에 대한 업데이트를 지원합니다. 문서화된 설정은 Tinker Gradle 패치 플러그인을 핵심 Android 라이브러리와 함께 사용합니다. 앱은 TinkerApplication 서브클래스를 사용하고 사용자 정의 Application 로직을 DefaultApplicationLike 클래스로 이동하여 Tinker를 통합합니다. 선택적 tinker-android-anno 모듈은 @DefaultLifeCycle 어노테이션에서 Application 클래스를 생성할 수 있습니다. Tinker는 또한 관련 ProGuard 구성을 자동화하고 멀티덱스 keep 규칙을 생성할 수 있습니다. 패치 생성은 Gradle 또는 tinker-cli를 통해 수행할 수 있습니다. README에는 dexdiff 기반 패치를 빌드하고 패키징하기 위한 Ark 지원 노트가 포함되어 있지만, 일부 Ark 컴파일 단계는 TODO로 표시되거나 Ark 컴파일러 팀에서 외부적으로 처리합니다. 문서화된 제한 사항으로는 새로운 Android 구성 요소 추가와 같은 AndroidManifest.xml 업데이트 불가능, Android 21을 실행하는 일부 Samsung 기기 지원 부족, Google Play 개발자 배포 계약에 따른 동적 APK 업데이트 제한이 있습니다. 이 프로젝트는 BSD 라이선스이며 추가 구성 세부 정보를 위한 샘플 앱, 위키, FAQ 및 소스 코드를 제공합니다.