Resultado da resolução do NDK: configurações do projeto: versão do modelo Gradle = 5.4.1, versão do NDK com erro DESCONHECIDO

103

Depois de atualizar o Android Studio e o Gradle para 3.5, recebo este erro:

Resultado da resolução do NDK: configurações do projeto: versão do modelo Gradle = 5.4.1, versão do NDK DESCONHECIDA

Mudei a versão do Gradle no build-gradle de volta para 3.4.2, mas não ajudou.

Farhad Farzin
fonte
Qual é a versão do seu NDK? Como foi instalado? Como você o está usando em seu projeto (especificado em build.gradle, local.properties ou ANDROID_NDK_HOME)? O que há no arquivo source.properties no NDK?
Dan Albert
2
Onde você conseguiu esse "erro"? Recebo esta mensagem após a atualização do Android Studio em todos os meus projetos no Log de eventos, mas não tem impacto. Tudo é construído e executado como deveria. Nunca usei o NDK - então não me importo se não funcionasse.
O incrível janeiro
1
acho que ... a "versão NDK" não é o problema principal .... eu importei o projeto novamente ... e o problema foi resolvido
Farhad Farzin
1
É possível que nenhuma das soluções funcione para você (elas não funcionaram para mim). O problema está sendo rastreado pelo google, você pode marcá-
Mike Hardy

Respostas:

70

Tive um problema semelhante e resolvi abrindo o projeto usando em Import project (Gradle, Eclipse, etc.)vez de Open existing Android Studio project.

Alapshin
fonte
9
Isso não resolveu para mim. Eu ainda tenho o erro mesmo com gradle 5.6.1 / plugin 3.5.0 / Android Studio 3.5.0 depois de importar o projeto novamente
Mike Hardy
Para completar (desde que eu disse que não funcionou para mim) isso realmente faz o trabalho para mim - e é necessário mesmo - fixar uma espécie bobo separada de Gradle + reagir nativo questão módulo de compilação nativa. Portanto, como um truque do "Android Studio / gradle" para ter na sua bagagem, é um bom truque.
Mike Hardy
20
vá para Arquivo> Estrutura do Projeto> DownloadNDK que fará o download e adicionará o caminho para suas propriedades locais que podem consertar as coisas se esta resposta não funcionar
KingKongCoder
3
Fechei o projeto, apaguei todas as pastas Build, arquivos .iml, pasta .idea. Em seguida, abriu o projeto e foi construído com sucesso
Dmitriy Pavlukhin
1
@KingKongCoder Encontrei esse link em Arquivo> Estrutura do projeto> Local do SDK> Baixar Android NDK
bitlather
18

Você pode baixar o NDK em Arquivo> Estrutura do projeto> Escolhendo o local do SDK no painel esquerdo e pressionando Download da parte do local do NDK.

Zahra
fonte
9
Não faz sentido se você não o usar.
O incrível
A pergunta é sobre a mensagem de erro e uma resposta não deve exigir a instalação para eliminar a mensagem. O NDK é um pacote opcional
Mike Hardy
A resposta é para quem usa NDK e enfrenta esse erro e na pergunta não é mencionado se ele usa NDK ou não. @ The
Zahra
1
O NDK ocupa quase 1 GB do seu disco rígido anterior! E não tenho certeza se há algum outro impacto (como memória, desempenho, CPU, etc.). Por que precisamos fazer o download se nunca é usado? Podemos simplesmente ignorar o erro?
Pablo Alfonso
@Pablo Sim, se você não usa NDK e não ajudou nas respostas, ignore o erro.
Zahra
11

Eu estava tendo o mesmo problema depois de atualizar meu estúdio Android. Você só precisa abrir local.propertiese alterar o ndk.dircaminho para o caminho NDK.

Código:

ndk.dir=D\:\\Android\\SDK\\ndk-bundle
sdk.dir=D\:\\Android\\SDK
Shroffakshar
fonte
3
estou codificando com JAVA e não tenho NDK
Farhad Farzin
2
Isso não faz sentido se você não tem e não quer o NDK. É um componente opcional
Mike Hardy
local.properties diz "Este arquivo é gerado automaticamente pelo Android Studio. Não modifique este arquivo - SUAS ALTERAÇÕES SERÃO APAGADAS!"
leoneboaventura
7

Não uso o NDK no meu projeto, mas tive o mesmo problema. O problema desapareceu depois que atualizei a versão do SDK para a compileSdkVersion 29 mais recente

Vlad
fonte
2
Interessante - pensei que tinha potencial então experimentei, mas ainda não resolveu para mim. Há um problema em aberto aqui issuetracker.google.com/issues/140403764
Mike Hardy
2
@MikeHardy atualmente estou usando o plugin Gradle versão 3.5.0 e gradle versão 5.4.1. Tente mudar essas versões, enquanto o bug será corrigido. Espero que ajude você.
Vlad,
1
tudo está atualizado, mas continua igual!
Sahan Pasindu Nirmal
6

Eu tive uma resposta anterior (já excluída pelos moderadores) em que detalhei que existem soluções alternativas (conforme listado aqui) que funcionam para alguns, mas que há um bug subjacente no gradle porque as soluções alternativas não funcionam para todos (especificamente: nenhuma das eles trabalham para mim)

O problema do Google relacionado está aqui: https://issuetracker.google.com/issues/140403764

Atualização: a partir de hoje (20190920), eles indicam que corrigiram o problema subjacente, portanto, espero que uma versão futura do gradle após hoje (20190920) contenha a correção.

Update2: Hoje (20190926) recebi uma resposta de um googler que o código problemático estava no Android Studio e está contido no branch da versão 3.6, mas não está disponível em nenhuma compilação disponível publicamente no momento (Android Studio 3.6 Canary 12 era lançado pouco antes dessa correção ser feita). Isso permite que você saiba qual componente atualizar e em quais versões prestar atenção. Parece que o Android Studio 3.6 Canary 13 e posterior deve ter https://issuetracker.google.com/issues/140403764#comment13

Até então, você pode tentar as soluções alternativas, mas quando há um bug do fornecedor e as soluções alternativas não funcionam, você apenas tem que esperar por um patch do fornecedor.

Mike Hardy
fonte
5

Você precisa instalar o NDK usando o gerenciador de SDK Aqui estão as instruções oficiais sobre como instalar o NDK https://developer.android.com/studio/projects/install-ndk

Thunderstick
fonte
4

Tive esse problema pela primeira vez depois de atualizar do Android Studio 3.5.0 para 3.5.1 hoje.

Simplesmente fiz uma reconstrução a partir do menu superior Construir -> Reconstruir Projeto.

Isso pode não funcionar para todos, dependendo do que causou o problema, mas funcionou para o meu. Dê uma chance.

(Além disso, eu não uso o NDK e nunca fiz o download antes. Ainda não fiz o download)

Ryan
fonte
1
Estou usando AS 3.5.1, meu projeto precisa de NDK. Obteve o erro exato, limpe e reconstrua corrigido. Mais fácil o suficiente para tentar antes de fazer qualquer outra coisa.
Sean
@Sean Nice, que bom que funcionou! Aliás, acho que a reconstrução também começa com uma limpeza. Percebi isso uma vez, quando estava com a barra de ferramentas inferior aberta e "limpar" era a primeira tarefa. Desde então, comecei a trabalhar apenas na reconstrução. (Espero que esteja fazendo o que eu acho que é lol).
Ryan,
4

Se você não estiver usando o NDK, ignore o erro.

Instalei o NDK para ver se isso faz alguma diferença. Não há diferença (exceto para uma pasta NDK não utilizada de mais de 2 GB :). Então, eu o removi (ou seja, exclua a pasta ndk e remova a variável de ambiente NDK que você definiu anteriormente).

Pablo Alfonso
fonte
3

eu conserto indo para file > Invalidate Caches\Restart o IDE irá reiniciar e o problema será corrigido

Hocine Djouamaa
fonte
vá para 'arquivo> estrutura do projeto> localização do SDK' e baixe o último NDK e vá para o projeto 'local.properties' e especifique a localização do NDK como este 'ndk.dir = C \: \\ Usuários \\ Lenovo \\ AppData \ \ Local \\ Android \\ Ndk '
Hocine Djouamaa
Não faz sentido se você não o usar (NDK)
Sahan Pasindu Nirmal
3

Após minha recente atualização do Android Studio, recebi a mesma mensagem de erro. Tentei as outras respostas aqui e nenhuma funcionou. Mas a resposta de @Zahra me indicou algo que funcionou:

Vá para Arquivo-> Estrutura do projeto ... Em " Localização do Android NDK ", clique no menu suspenso e selecione a opção " PADRÃO NDK recomendado ".

Havia um caminho ligeiramente diferente lá antes de eu selecionar o padrão. Em algum lugar atualizando usando o gerenciador do SDK, o caminho parece ter mudado.

E agora, no arquivo local.properties, sdk.dir está definido para o mesmo diretório da opção " DEFAULT NDK Recomendado ".

ByteSlinger
fonte
Depois de tentar pelo menos 5 'soluções' diferentes, esta finalmente me trouxe de volta aos trilhos, agora para passar para qualquer que seja o próximo bug do Android Studio ...
norlesh
2

Eu tive o mesmo problema. Meu ambiente é:

  • Android Studio 3.5.1
  • Gradle 4.4
  • Android-Gradle-Plugin 3.1.2
  • CMake 3.10 e 3.6

Desinstalei o CMake 3.10 do SDKManager. (o CMake instalado é apenas 3.6)

Sincronização e criação do Gradle bem-sucedidas.

(1)

android-gradle-plugin 3.1.2 usou o CMake 3.10.

No android-gradle-plugin 3.1.2 (ou 3.1. +), O recurso de suporte para CMake 3.7 e superior é um recurso de visualização.

(da mensagem de saída de gradle assembleDebugou gradle sync.)

(2)

https://developer.android.com/studio/projects/add-native-code.html#use_a_custom_cmake_version

O SDK Manager inclui a versão 3.6.0 bifurcada do CMake e a versão 3.10.2. Projetos que não definem uma versão específica do CMake em build.gradle são compilados com o CMake 3.6.0.

Talvez esse comportamento seja android-gradle-plugin 3.3 ou superior. (é do android-studio 3.3 que pode ser baixado CMake 3.10)

android-gradle-plugin 3.1.2 usou a versão mais recente do CMake instalado.

Yu Kakizaki
fonte
Perdi que você escreveu "Gradle 3.5" e "build-gradle de volta para 3.4.2".
Yu Kakizaki
2

Eu tive o mesmo problema em um mac também.

Sugestão: force a pasta .gradle a se reconstruir.

Isso ainda mostra que a 'versão do NDK é DESCONHECIDA' no registro de eventos, mas é compilado com êxito e não causa nenhum problema. (Não tenho o NDK baixado)

  1. Abra sua pasta / Users / macuser /
  2. Pressione CMD + SHIFT +. (ponto / ponto) para ver as pastas ocultas
  3. DELETE pasta .gradle
  4. Reinicie o Android Studio

Isso fará com que o Android Studio reconstrua e baixe novamente sua pasta .gradle, corrigindo seus arquivos conflitantes no processo.

Raposa
fonte
Isso funcionou para mim, mas apenas na primeira vez. Se eu reabrisse o projeto sem primeiro excluir .gradle, receberia o mesmo erro de antes.
Kyle Abens
Sim, parece que o erro permanecerá no log. O meu também está em andamento, mas o projeto é construído e executado muito bem.
Fox
1

O problema foi resolvido quando eu atualizei a versão do plugin do Android Gradle de 3.1.4 para 3.4.0 e a versão do Gradle de 4.4 para 5.1.1 ao mesmo tempo. Claro, eu baixei o mais novo NDK (Side by Side) com SDK Manager.

Hai-Yang Li
fonte
Eu também tive que atualizar minha versão do Gradle
BlackHatSamurai
1

Eu tive o mesmo erro depois de adicionar algumas bibliotecas no build.gradlearquivo de nível de aplicativo .
A solução foi apenas limpar o projeto .
Na barra de menu, escolha: Build >> Clean Project
Depois disso, o erro foi embora para mim. Eu não fiz mais nada.

Abdallah
fonte
1

No meu caso, o Android Studio foi instalado em um novo mac. Só precisava baixar o Android 9 (meu SDK de destino / compilar era 28) e construir ferramentas. O problema foi resolvido depois disso.

Vlad b
fonte
1

No meu caso, eu conserto atualizando para SdkVersion 29 e migrando para o AndroidX.

AissaDevLab
fonte
1
atualizar o destino e compilar a versão para o sdk 29 funcionou para mim: D
Ziad H.
0

Após a atualização, tive o mesmo problema em um dos meus projetos. Resolvi apenas excluindo a linha ndk.dir = D: \ Android \ SDK \ ndk-bundle do arquivo local.properties.

itassets
fonte
1
A resposta pode ser mais valiosa declarando como você sabia onde encontrar o arquivo no android studio ou no sistema de arquivos e seu raciocínio para determinar que era a mudança a fazer.
Reenactor Rob
5
ndk.dir não está definido em meus projetos. Nunca usei NDK. Mesmo assim, recebo esse "erro" no Android Studio 3.5.
O incrível
Assim como The Incredible Jan, isso não estava em meu local.properties, mas ainda recebo essa mensagem. Portanto, não é uma solução completa, mas talvez possa ajudar alguns
Mike Hardy
0

Recebi este erro (e vários outros) após importar um projeto do controle de versão por meio do hiperlink do Bitbucket.

Depois de importado, feche o projeto e importe-o novamente usando File > New > Import Project. Depois disso, tudo construído corretamente. (O caminho NDK já foi especificado corretamente, e importando apenas como novo funcionou)

Meta: Android Studio 3.5 Build #AI-191.8026.42.35.5791312, built on August 8, 2019 JRE: 1.8.0_202-release-1483-b49-5587405 x86_64 JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o macOS 10.13.6 Gradle 3.4.0

Blaze Gawlik
fonte
0

Problema resolvido para mim após verificar as sugestões na estrutura do projeto e atualizar as duas atualizações sugeridas. Desculpe, não consigo me lembrar dos nomes dos módulos, pois eles desapareceram assim que pressionei atualizar para cada um deles e sincronizar graddle. começou automaticamente e depois que o problema desapareceu

mamadsp
fonte
0

rebaixar a versão ndk de 20 para r17c e a versão cmake de 3.10 para 3.6.411459 resolveu o problema para mim

Asif Khan
fonte
0

Tive o mesmo problema depois de atualizar o Android Studio. Meu problema é resolvido após atualizar as ferramentas de construção do Android SDK. [Ferramentas-> SDK Manager-> SDK Tools-> Android SDK Build-Tools].

Em seguida, tente limpar o projeto [Build-> Clean Project].

Finalmente reinicie o Android Studio IDE ......

Joyal Jose
fonte
0

Acabei de fechar o projeto, fechei o android studio, reiniciei meu PC, rastreei meu projeto e apaguei a pasta .Idea em "B: /PROJECTNAME/.idea" e voila.

Problema resolvido. Ele ressincroniza. N / B: meu gradle é androidx. boa sorte para alguém.

Kalaiyo5
fonte
0

Altere o claaspath para 'com.android.tools.build:gradle:3.5.2' no script build.gradle

Bidyut
fonte
0

Está bem. Recentemente, baixei a versão mais recente do Android Studio e recebi um erro semelhante. Então, eventualmente, criei um novo projeto. Selecione o idioma Kotlin e, em seguida, Jelly Bean (falando sobre as opções para escolher). Então, toda a sincronização começou, mas a 1ª sincronização falhou e, eventualmente, foi sincronizada automaticamente novamente e tudo começou a funcionar. Modifiquei os códigos padrão (texto), pois sou iniciante, mas não recebi mensagens de erro. A visualização foi boa e continuei meu aprendizado. Desculpe, não pude explicar melhor. Eu sou apenas um iniciante. Oh! Você precisa estar conectado à Internet para que funcione.

ANTHONY MELAH
fonte
0

Se o problema ocorreu após uma atualização do Android Studio e você iniciou uma atualização do plug-in na notificação inferior direita: Abra File > Project structure, altere a versão do Android Gradle para a versão do Android Studio e faça downgrade da versão do Gradle para a anterior.

No meu caso, fiz downgrade do plug-in do Android Gradle de 3.5.3 para 3.2.1 e a versão do Gradle de 5.4.1 para 4.6.

Walelgn
fonte
0

Modifiquei a versão gradle do arquivo gradle-wrapper.properties de 4.1 para 4.6.

Jokeen
fonte
0

Eu tive esse problema e nenhuma das soluções funcionou para mim. O problema é que esse erro ou aviso pode aparecer por motivos muito amplos. Você pode seguir estas etapas para descobrir o que está errado:

NDK ausente

Quando o Gradle começa a compilar dependências nativas, ele cria a pasta ".cxx" na pasta "app". dentro dessa pasta você pode encontrar o arquivo "ndk_locator_record.json", que é um tipo muito estranho de arquivo de log. Basicamente, são todos os caminhos que o Gradle verifica para localizar a pasta NDK. Se houver algum erro ou incompatibilidade nos números de versão do NDK, você poderá ver neste arquivo.

Falha na compilação do NDK

por alguns motivos desconhecidos (talvez bug no Gradle) ndk build não mostra o erro real na janela de log de eventos, em vez disso, mostra uma falha, como falha de sincronização do Gradle: execução de compilação nativa externa para ndkBuild .... seguido pelo Resultado de resolução do NDK: Projeto configurações: versão do modelo Gradle = 5.4.1, versão do NDK é DESCONHECIDA .

Neste caso, volte para .cxx> ndkBuild> debug> x86 (x64 ou qualquer outro cpu arch) Aqui nesta pasta você pode encontrar o arquivo "json_generation_record.json", é o mesmo tipo de log, geralmente a última entrada tem o erro real . Por exemplo, para mim era

 ../../sdk/native/jni/OpenCV.mk: No such file or directory
 make: *** No rule to make target '../../sdk/native/jni/OpenCV.mk'.  Stop.

A partir daqui, você tem um ponto de partida para descobrir o que está errado por baixo do capô.

Keivan
fonte
0

Se o NDK não estiver instalado e o projeto Android exigir, primeiro instale o NDK.

No sistema operacional Windows, adicione o caminho NDK à variável de ambiente PAT H. Isso vai resolver o problema da versão.

No meu caso, o caminho do NDK é C: \ Users \\ AppData \ Local \ Android \ Sdk \ ndk \ 21.0.6113669

tanni tanna
fonte
0

Já enfrentei esse problema antes e o resolvi certificando-me de ter as permissões corretas para o diretório do aplicativo.

Estou usando o macOS, então fiz:

chmod -R 777 your_android_project

e o problema foi embora.

Mohammad Salem
fonte
-1

Também tive esse problema quando atualizei a versão do plug-in do Android Gradle de 3.1.2 para 3.5.1

Aqui está como resolver esse problema:

Vá para gradle.properties filea pasta raiz do seu projeto e adicioneandroid.useDeprecatedNdk=true

inggo topan
fonte