programing

요청한 버전과 일치하는 NDK 버전이 없습니다.

bestprogram 2023. 8. 25. 23:49

요청한 버전과 일치하는 NDK 버전이 없습니다.

Android Gradle 플러그인으로 업데이트한 후 3.6.0(24일 ), (2020년 2월 24일 발매), (2020년 2월 24일 발매), (2020년 2월 24일 발매)와 함께 하기 시작했습니다

No version of NDK matched the requested version 20.0.5594570. Versions available locally: 21.0.6113669

오래된 예상 ndk 버전을 설치하여 로컬에서 이 문제를 "수정"하는 것은 매우 간단합니다.

sdkmanager 'ndk;20.0.5594570'

하지만 제 질문은 다음과 같습니다.이 이전 버전은 어디에서 어떻게 지정됩니까? 최신 버전과 해야 합니까?21.0.6113669?

은 현재 수 플러그인으로 한 후 " of version"합니다.한 버전과 일치하는 NDK 버전이 없습니다" 오류로 인해 실패하기 시작했다고 가정합니다.3.6.0계속하기 전에 NDK를 설치해야 합니다.

옵션 1:

Project Structure(프로젝트 구조) 대화 상자에서 로컬로 설치된 NDK를 선택하기만 하면 됩니다.

Structure 는 다을클프구조대열수있화다습니를자상로트를 클릭하여 열 수 .File > Project Structure... 가기 키를 .CTRL + ALT + SHIFT + S (음악)

Project Structure(프로젝트 구조) 대화상자가 열리면 SDK Location(SDK 위치)으로 이동하여 Android NDK Location(안드로이드 NDK 위치)에서 로컬로 설치된 NDK 버전을 선택합니다.일반적으로 이것은 사용자 폴더의 어딘가에 설치됩니다.\AppData\Local\Android\Sdk\ndk\%ndk version%적어도 Windows의 경우.

Project Structure dialog screenshot3.6 Build , 2020년 2월 12일 #AI-192.7142.36.6200805, 2020년 2월 12일 빌드

옵션 2:

옵션 1을 수행하면 다음 항목을 편집합니다.local.properties파일을 사용할 수 있으며 대부분의 경우 작동합니다.그러나 이 공식 가이드에 따라 프로젝트를 빌드하는 모든 컴퓨터에서 일관된 NDK 버전을 사용하려면 모듈 Gradle 스크립트에서 NDK를 구성할 수 있습니다.간단히 추가합니다.ndkVersion의 "Gradle"에서android{}그런 식으로 막다

android {
    ndkVersion "major.minor.build"
}

사용할 NDK 버전으로 이중 따옴표 사이의 문자열 바꾸기

옵션 3:

버전을 특정시스구모축프트가로 NDK버전수있다설습니를 .ANDROID_NDK_HOMENDK 폴더의 경로를 가진 환경 변수입니다.

저도 같은 문제가 있어요.Tools 했습니다. SDK Tools를 클릭합니다.Show Package Details그런 다음 NDK(Side by side) 아래로 스크롤하고 필요한 버전을 선택하여 적용합니다.아래 이미지 참조:

Image link to SDK tools for NDK version install

누구에게나 묻고 싶은 것은 NDK가 필요하지 않은 프로젝트에 왜 지금 이것이 필요한가 하는 것입니다.NDK는 제가 작업하는 프로젝트에서 종속성에 대한 기존 요구사항입니다!

Android Gradle 플러그인 > 4.1.0에서는 필요하지 않습니다(https://issuetracker.google.com/issues/144111441) 참조).

< 4.1.0>에서는 이것도 마주칩니다.

요청한 20.0.5594570 버전과 일치하는 NDK 버전이 없습니다.현지에서 사용 가능한 버전: 21.0.6113669

옵션 1:

Project Structure Dialog works에서 로컬로 설치된 NDK를 선택하기만 하면 됩니다!

그러나 로컬 빌드에만 유효하므로 CI에 대한 솔루션이 필요합니다.

옵션 2:

사용되는 모든 모듈에서 지정하는 경우에만 작동합니다.

android {
    compileSdkVersion 28
    ndkVersion "21.0.6113669"
    ...
}

여기서 https://github.com/hannesa2/panoramagl/pull/17/checks 는 이 변경 사항으로 작동하지 않는 것 같습니다. https://github.com/hannesa2/panoramagl/pull/17/files#diff-cff4e8c294a5dc5e76308662ae1ddcacR6-R7

옵션 3:

export ANDROID_NDK_HOME=/Users/{my-user}/Development/adt/sdk/ndk/21.0.6113669

역시 효과가 있습니다!

다른 사용자가 답변하지 않은 질문에 대답하려면 "이전 버전은 어디에서 어떻게 지정됩니까?그리고 최신 버전 21.0.6113669와 일치하도록 업데이트하려면 어떻게 해야 합니까?":

기본 버전은 Android Gradle 플러그인으로 설정됩니다.각 버전은 가능한 최상의 호환성을 보장하기 위해 테스트 중에 사용한 NDK 버전으로 기본 설정됩니다.

이 플러그인 버전과 이전 플러그인 버전의 차이점은 우연히 설치한 NDK를 기꺼이 사용했다는 것입니다.이로 인해 사용자들은 동료들이 프로젝트를 구축할 수 없고 CI에서는 작동하지 않지만 로컬에서는 작동하는 등 수많은 "내 기계 작업" 문제를 일으켰습니다.상황이 좋지 않았습니다.

하려면 NDK를 설정합니다.android.ndkVersion네 체격에. 그래들로.gradle.그렇지 않으면 사용 중인 Gradle 플러그인의 기본 버전을 사용하려고 합니다.

문제는 4.1 버전까지 대부분의 버전이 기본 버전을 자동으로 다운로드하지 않는다는 점입니다. 이 경우 오류가 표시됩니다.build.gradle에서 명시적으로 버전을 선택하면 실제로 자동으로 다운로드되며 4.1에서는 기본 버전도 자동으로 다운로드됩니다.

사람들을 종종 혼란스럽게 하는 것은 왜 그들이 NDK를 사용하지 않거나 적어도 그들이 그렇지 않다고 믿는지에 대한 이유입니다.에 대한 중 이러한 입니다.stripNDK에서 왔습니다.

이것은 MacOS에서 작동했습니다. 터미널을 통해 확인하십시오.

cd ~/Library/Android/sdk
ls

"ndk" 및/또는 "ndk-bundle"이 표시되면 삭제합니다.

sudo rm -r ndk/
sudo rm -r ndk-bundle/

그 폴더들을 삭제한 후, 모든 것이 저에게 효과가 있었습니다.이것은 GitHub에서 복사한 것입니다.

에서는 Gradle의 마지내부 NDK 필요없습다니가의할정을전막버전버는 .build.grade:

android {
    ...
    ndkVersion "21.0.6352462"
    ...
}

제안된 버전을 설치해야 합니다.

enter image description here

또는 Android NDK 위치에 현재 사용 가능한 버전을 정의합니다.

enter image description here

enter image description here

Gradle 클래스 경로를 프로젝트 수준 build.gradle에서 이 경로로 바꿉니다.

   classpath 'com.android.tools.build:gradle:4.1.0'

gradle-interval.properties에서 이 줄을 추가합니다.

distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip

저도 같은 문제에 직면했습니다.그리고 여기서 개발자 참조를 찾았습니다.

Default NDK version per AGP version

문제는 Gradle 버전 3.6부터 시작됩니다.3.6 이전에는 기본 ndk가 지정되지 않았습니다.그래서 어떤 버전의 ndk도 문제없이 작동했습니다.그러나 기본 버전을 추가한 후 build.gradlendkVersion을 추가하지 않으면 ndk의 기본 버전을 검색합니다.

저의 경우 gradle 버전은 3.6.3이었고 ndk는 21.0.6113669를 설치했으며 build.gradlendkVersion을 정의하지 않았습니다.그래서 나의 그래들 버전에 따라 기본 ndkVersion "20.0.5594570"을 검색하고 동일한 오류를 주었습니다.그래서 제 build.gradle 파일에 kVersion "21.0.6113669"를 추가하기만 하면 오류가 사라집니다.

문제를 에 표시해야 합니다.build.gradle이 경우 버전 21.0.6113669여야 합니다.예:

defaultConfig {
    // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
    applicationId "com.example.remed_mobile"
    minSdkVersion 16
    targetSdkVersion 28
    ndkVersion '21.1.6352462'
    versionCode flutterVersionCode.toInteger()
    versionName flutterVersionName
}

버전 번호를 지정하지 않으면 IDE는 기본 버전을 사용합니다.그라들을 업그레이드한 경우 올바른 버전을 찾을 수 없습니다.

build.gradle(app)에 이 줄을 추가합니다.

안드로이드 {}

ndk 버전 "21.0.6113669"

}

이것이 문제를 해결할 것입니다.

https://github.com/gradle/gradle/issues/12440#issuecomment-606188282

이것은 나에게 효과가 있습니다.

local.properties 파일을 편집하여 추가합니다.

ndk.dir=/xxxxx/Android/sdk/ndk-bundle
Android Studio -> Preferences -> System settings -> Android SDK -> Got to SDK tools  and remove NDK(Side by Side) and apply.

 ndkVersion "21.0.6113669" ///  <<---Add this in your android -> app -> build.gradle file.

  buildTypes {
        release {
            // TODO: Add your own signing config for the release build.
            // Signing with the debug keys for now, so `flutter run --release` works.
            signingConfig signingConfigs.debug
        }
    }
    ndkVersion "21.0.6113669" 

저도 같은 문제가 있었습니다, 잠시 후 저는 임시 해결책을 찾았습니다.이름을 고치다ndk에서 한대폴로 이동합니다.ndk-bundle에서 당의프트에서로 합니다.local.properties하고 이 을 일을작고줄파 앞에 합니다.sdk.dir:

ndk.dir=<path to your ndk folder>

그것의 나의 것:

ndk.dir=G\:\\SDK\\ndk-bundle
sdk.dir=G\:\\SDK

도움이 되길 바랍니다.

저도 아래 오류가 있었습니다.

No version of NDK matched the requested version 20.0.5594570. Versions available locally: 21.3.6113669

해결된 앱 레벨 빌드.gradle 파일에 로컬 NDK 버전을 추가했습니다.

    android {
        ndkVersion "My Available version here"  (my case it 21.3.6113669)
    }

flutter clean 
flutter pub get

Gradle로 업그레이드한 후: 3.6.0(또는 그 이상).C:에 있는 ndk 및 ndk 번들 폴더의 이름을 바꾸거나 삭제해 보십시오.\사용자\<사용자>\AppData\로컬\Android\Sdk

신용 거래처: https://github.com/gradle/gradle/issues/12440#issuecomment-601214647

클래스 경로 버전을 프로젝트 수준인 build.gradle 내의 3.5.0으로 변경합니다.

dependencies {
        classpath 'com.android.tools.build:gradle:3.5.0'
}

저도 같은 문제가 있고 해결되었습니다.

요청한 버전 20.0.5594570과 일치하는 NDK 버전이 없습니다.

여기 해결책이 있습니다.

1====>이 없는Click on download 경우 NDK를 먼저 다운로드합니다.

2====>프로젝트 필요에 따라 NDK 이름 변경(여기처럼 20.0.5594570이 필요함)

3====>그 후 안드로이드 폴더에서 gradle.properties 파일을 엽니다.

여기에 당신의 ndk 위치를 이렇게 놓습니다.

그럼 반응 네이티브 런웨이를...바로 그겁니다.

NDK 문제 해결

감사합니다!

앱의 build.gradle 파일로 이동합니다;

Android {}에서 사용 가능한 ndk 버전을 추가합니다. 이는 게시한 오류 정보에 표시됩니다.이 경우 버전은 "21.0.6113669"입니다.

No version of NDK matched the requested version 20.0.5594570. Versions available locally: 21.0.6113669

Android {ndkVersion "21.0.6113669" }

모듈의 build.gradle 파일을 열고 다음을 편집합니다.

android {
        **ndkVersion** "version number of you NDK"
    }

NDK의 정확한 버전을 찾는 데 문제가 있다면 여기에서 다운로드할 수 있습니다. 공식 사이트(https://developer.android.com/ndk/downloads) 에서 이 버전이 더 이상 존재하지 않는 동안 IDE에 필요한 버전 21.1.6352462가 저의 경우였습니다.

API, 버전 및 OS별 모든 Android NDK 네이티브 개발 키트

저는 이 문제를 여우나 포인 엑스에서 발견했습니다.OS의 루트 디렉터리에서 Gradle 폴더를 열고 숨깁니다.

add file gradle.properties
add code 
ndk.dir=/Users/your os name/Library/Android/sdk/ndk

뎅~

먼저 Android 스튜디오에서 NDK를 설치하고 다운로드 ndk 버전보다 Tools>sdk manager>sdk 도구를 설치합니다.

다음과 같이 local.properties 설정 ndk 경로에서 보다.

ndk.dir=/Users/{yourUserName}/라이브러리/Android/sdk/ndk/21.4.7075529

프레임워크를 사용하는 경우

  1. 에 가다build.gradle앱에서 안드로이드 추가하기 => 앱더및추가폴추가▁in및and▁android▁folder.

    android { ndkVersion rootProject.ext.ndkVersion }
    
  2. Android 폴더의 Gotp build.gradle을 추가합니다.

    buildscript {
        ext {
           ndkVersion = "23.1.7779620"
        }
    }
    
  3. 그라들을 정리하고 프로젝트를 다시 실행합니다.

나는 지정된 버전(안드로이드 스튜디오의 이상한 오류, 실리콘 칩과 관련이 있을 수 있음)을 설치할 수 없었기 때문에 내 build.gradle에 ndk의 새로운 버전을 지정했고 모든 것이 작동했습니다.

[My Error: requested ndk version 22.0.7026061이 ndk.dir에서 요청한 버전 20.0.5594570과 일치하지 않음]

내 솔루션:다른 장소에서 지적되는 다른 ndk 버전이 있는 것 같습니다.

동일한 내용에 대한 자세한 내용은 아래를 참조하십시오.로 이동하십시오.

  1. Project Structure=> SDK Location=> NDK Location (적절한 ndk 버전 하나 확인)

NDK 버전에서 프로젝트 구조=> 모듈=> 2단계에 대한 PFA 이미지(첫 번째 단계에서 추가한 것과 동일한 버전 확인)

Android 스튜디오 프로젝트로 이동=> local.properties 파일로 이동=> ndk 버전 번호를 확인합니다.

현재의 NDK 버전 하나로 3단계가 모두 적절하다면 오류가 해결되었을 것입니다.

참고: 프로젝트 파일을 동기화하고, 프로젝트를 정리하고, 프로젝트를 다시 빌드해야 합니다.

이것이 당신의 문제를 해결하기를 바랍니다!!해피 코딩:)

언급URL : https://stackoverflow.com/questions/60404457/no-version-of-ndk-matched-the-requested-version