카테고리 없음
[기계적 인조 인간] .apk에서 .so 라이브러리 분리
행복을전해요
2021. 2. 22. 07:39
예, 앱의 Java 부분이 적절한 .so 파일을 앱의 내부 저장소 폴더에 수동으로 다운로드하고 실행 가능으로 표시하도록 할 수 있습니다.
그런 다음 System.loadLibrary () 및 잘린 라이브러리 이름이 아닌 System.load () 및 .so 파일의 전체 경로 이름을 사용하여로드해야합니다.
여기서 가장 큰 문제는 이제 ABI와 일치하는 책임이 있으며, 더 중요한 것은 앱 이름으로 악의적 인 작업을 수행하고 해당 권한을 사용할 수있는 수정 된 라이브러리 또는 가짜 라이브러리를 설치하도록 속지 않도록 자신의 보호를 제공하는 것입니다.
물론 네이티브 메서드를 설치하기 전에 호출하지 않도록해야합니다.
.so 파일을 기본 .apk로 공유 사용자 ID (및 일치하는 인증서)가있는 자체 골격 .apk에 각각 바이너리 자산으로 제공하는 것을 고려할 수도 있습니다.
또는 단순히 하나의 .so 만 포함하는 각 대상에 대해 플랫폼 별 .apk를 만들고 배포 시스템에서 올바른 항목을 선택하도록 할 수 있습니다 (업그레이드 문제에는 도움이되지 않음).
출처
https://stackoverflow.com/questions/22079998