본문 바로가기

OS/Android

Android minSdkVersion 21 -> 23

반응형

이번에 minSdkVersion을 21에서 23으로 올리면서 NativeLibrary쪽 문제가 발생하여 이 글을 적는다.

 

왜 minSdkVersion을 올렸다고 네이티브 라이브러리 쪽에 문제가 발생하는걸까?

https://developer.android.com/ndk/guides/sdk-versions?hl=ko 

 

Android SDK 버전 속성  |  Android NDK  |  Android Developers

Android SDK 버전 속성 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 애플리케이션은 build.gradle 파일에 여러 SDK 버전 속성을 설정할 수 있습니다. Android b

developer.android.com

외부네티티브라이브러리를 컴파일할 때 어떤 NDK 함수를 사용할건지 app의 minSdkVersion으로 판단한다고 한다.

즉 minSdkVersion 21로 설정하여 빌드헀을 때와 23으로 빌드 했을 때 컴파일 실행 파일이 달라질 수 있다는 뜻이다.

 

https://developer.android.com/reference/tools/gradle-api/7.1/com/android/build/api/dsl/JniLibsPackagingOptions#uselegacypackaging

 

JniLibsPackagingOptions  |  Android Developers

com.android.build.api.component

developer.android.com

따라서 이전 버전과 호환을 하기 위해서는

manifest에 extractNativeLibs="true"

app gradle에 useLegacyPackaging true를 설정하면 된다.

 

반응형

'OS > Android' 카테고리의 다른 글

안드로이드 Auto 마이크 테스트  (0) 2023.10.12
Android automotive 테스트  (0) 2023.05.15
원스토어 배포 이슈  (0) 2022.11.29
Android Media Button 대응  (0) 2022.01.12
Android 위젯 (Widget)  (0) 2022.01.04