구 버전의 NDK 설치(NDK 아카이브)

2019. 4. 12. 19:03Programming/Android

반응형

기존 프로젝트에서 NDK v14버전을 사용하고 있었는데, 별 생각없이 Android Studio를 켜서 YES를 누르다보니 빌드가 되지 않는다. 빌드 에러를 천천히 읽어보니 Gradle v3.3.1에서는 NDK v14를 지원하지 않으니, NDK를 업데이트 하라는 내용이었다. 별 생각없이 업데이트하고 났는데 왠걸. Gradle v3.3.1로 업데이트하고나니 Samsung에서 출시된 5.X버전의 안드로이드 기기에서 문제가 발생했다. KISA에서 배포하는 SEED CBC 암호화를 적용할 경우, 앞에서 몇 글자가 깨지는 문제였다. 뭐가 원인인지 한참을 찾다가 Gradle v3.2.1의 최소 targetSDKVersion은 28이기 때문에, 25로 지정된 targetSDKVersion은 무시된다는 내용이었다.

dependencies {
  //gradle 3.3.1버전은 targetSDKVersion이 28 이하일 경우, 이 옵션을 무시한다.
  classpath 'com.android.tools.build:gradle:3.3.1' 
}

설마 이 녀석인가, 싶어서 Gradle의 버전을 2.3.3으로 낮추니 NDK버전이 호환되지 않는다는 에러 메시지가 출력됐다. 부랴부랴 SDK Manager를 실행시켜서 NDK항목을 확인해보니 왠걸. 이전버전의 NDK를 다운받는 기능이 없지 않은가.

NDK, SDKManager

애석하게도 SDK Manager는 이전버전의 NDK를 다운받는 기능이 없다.

이전 버전의 NDKNDK 아카이브(Archive), Android Developers 페이지에서 다운받을 수 있다. 다운받은 후 압축을 푼 후, local.propertiesndk.dir항목에 경로를 지정하면 된다.

NDK PATH

local.properties파일 내에서 NDK의 경로만 지정하면 적용된다.

local.properties 파일의 내용을 수정한 뒤 NDK의 버전이 적용되지 않는다면, Android Studio를 껏다 켜도도록 하자. 이상없이 적용되는 것을 확인할 수 있다. Gradle 2.3.3버전에서 빌드되는 것으로 확인할 수도 있지만, SDK Manager에서도 NDK의 버전을 확인할 수 있다. :)

반응형