Hasil Resolusi NDK: Setelan proyek: Model Gradle versi = 5.4.1, versi NDK adalah kesalahan TIDAK DIKETAHUI

103

Setelah memperbarui Android Studio dan Gradle menjadi 3.5, saya sekarang mendapatkan kesalahan ini:

Hasil Resolusi NDK: Setelan proyek: Model Gradle versi = 5.4.1, versi NDK TIDAK DIKETAHUI

Saya mengubah versi Gradle dalam build-gradle kembali ke 3.4.2 tetapi itu tidak membantu.

Farhad Farzin
sumber
Versi apa yang Anda NDK? Bagaimana cara menginstalnya? Bagaimana Anda menggunakannya dalam proyek Anda (ditentukan dalam build.gradle, local.properties, atau ANDROID_NDK_HOME)? Apa yang ada di file source.properties di NDK?
Dan Albert
2
Di mana Anda mendapatkan "kesalahan" ini? Saya mendapatkan pesan ini setelah pembaruan Android Studio di semua proyek saya di Event Log tetapi tidak ada pengaruhnya. Semuanya dibangun dan berjalan sebagaimana mestinya. Saya tidak pernah menggunakan NDK - jadi saya tidak peduli apakah itu tidak akan berhasil.
Jan
1
saya pikir ... "versi NDK" bukanlah masalah utama .... saya mengimpor proyek lagi ... dan masalah teratasi
Farhad Farzin
1
Mungkin tidak ada solusi yang berhasil untuk Anda (solusi tersebut tidak berhasil untuk saya). Masalahnya dilacak oleh google, Anda dapat memberi bintang di sana Issuetracker.google.com/issues/140403764
Mike Hardy

Jawaban:

70

Saya memiliki masalah yang sama dan menyelesaikannya dengan membuka proyek menggunakan Import project (Gradle, Eclipse, etc.)alih-alih Open existing Android Studio project.

alapshin.dll
sumber
9
Itu tidak menyelesaikannya untuk saya. Saya masih memiliki kesalahan bahkan dengan gradle 5.6.1 / plugin 3.5.0 / Android Studio 3.5.0 setelah mengimpor proyek lagi
Mike Hardy
Untuk kelengkapan (karena saya mengatakan itu tidak berhasil untuk saya) ini benar - benar berfungsi untuk saya - dan bahkan diperlukan - untuk memperbaiki masalah kompilasi modul asli gradle + react-native yang konyol. Jadi, sebagai trik "Android Studio / gradle" yang harus Anda miliki, itu bagus.
Mike Hardy
20
buka File> Struktur Proyek> UnduhNDK yang akan mengunduh dan menambahkan jalur ke properti lokal Anda yang mungkin memperbaiki keadaan jika jawaban ini tidak berhasil
KingKongCoder
3
Saya menutup proyek, menghapus semua folder Build, file .iml, folder .idea. Kemudian membuka proyek dan berhasil dibangun
Dmitriy Pavlukhin
1
@KingKongCoder Saya menemukan tautan itu di File> Struktur Proyek> Lokasi SDK> Unduh Android NDK
bitlather
18

Anda dapat mendownload NDK dari File> Project Structur> Memilih lokasi SDK dari panel kiri dan menekan Download dari bagian lokasi NDK.

Zahra
sumber
9
Tidak masuk akal jika Anda tidak menggunakannya.
Jan
Pertanyaannya adalah tentang pesan kesalahan dan jawabannya tidak perlu menginstalnya untuk menghilangkan pesan tersebut. NDK adalah paket opsional
Mike Hardy
Jawabannya untuk siapa saja yang menggunakan NDK dan menghadapi kesalahan ini dan dalam pertanyaan tidak disebutkan bahwa dia menggunakan NDK atau tidak. @ The
Zahra
1
NDK membutuhkan hampir 1GB dari hard drive Anda sebelumnya! Dan saya tidak yakin apakah ada dampak lain (seperti memori, kinerja, CPU, dll.). Mengapa kita perlu mendownloadnya jika tidak pernah digunakan? Bisakah kita mengabaikan kesalahannya?
Pablo Alfonso
@Pablo Ya, jika Anda tidak menggunakan NDK dan tidak ada jawaban yang membantu, abaikan kesalahan.
Zahra
11

Saya mengalami masalah yang sama setelah memutakhirkan studio android saya. Anda hanya perlu membuka local.properties& mengubah ndk.dirjalur ke jalur NDK Anda.

Kode:

ndk.dir=D\:\\Android\\SDK\\ndk-bundle
sdk.dir=D\:\\Android\\SDK
shroffakshar.dll
sumber
3
saya coding dengan JAVA dan saya belum NDK sama sekali
Farhad Farzin
2
Ini tidak masuk akal jika Anda tidak memiliki dan tidak menginginkan NDK. Ini adalah komponen opsional
Mike Hardy
local.properties mengatakan "File ini dibuat secara otomatis oleh Android Studio. Jangan memodifikasi file ini - PERUBAHAN ANDA AKAN DIHAPUS!"
leoneboaventura
7

Saya tidak menggunakan NDK dalam proyek saya, tetapi saya memiliki masalah yang sama. Masalahnya hilang setelah saya memperbarui versi SDK ke compileSdkVersion 29 terbaru

Vlad
sumber
2
Menarik - Saya pikir itu memiliki potensi jadi saya mencobanya, masih belum menyelesaikannya untuk saya. Ada masalah terbuka di sini Issuetracker.google.com/issues/140403764
Mike Hardy
2
@MikeHardy saat ini saya menggunakan plugin Gradle versi 3.5.0 dan gradle versi 5.4.1. Cobalah untuk mengubah versi ini, sementara bug akan diperbaiki. Semoga membantu Anda.
Vlad
1
semuanya up-to-date tetapi masih sama!
Sahan Pasindu Nirmal
6

Saya memiliki jawaban sebelumnya (sejak dihapus oleh moderator) di mana saya merinci bahwa ada solusi (seperti yang tercantum di sini) yang berfungsi untuk beberapa tetapi ada bug yang mendasari di gradle karena solusi tidak berfungsi untuk semua orang (khususnya: tidak satu pun dari mereka bekerja untuk saya)

Masalah Google terkait ada di sini: https://issuetracker.google.com/issues/140403764

Pembaruan: Mulai hari ini (20190920) mereka menunjukkan bahwa mereka telah memperbaiki masalah yang mendasarinya, jadi saya berharap rilis gradle di masa mendatang setelah hari ini (20190920) akan berisi perbaikan.

Pembaruan2: Hari ini (20190926) saya menerima tanggapan dari googler bahwa kode bermasalah ada di Android Studio dan itu terdapat di cabang rilis 3.6 tetapi tidak tersedia pada setiap build yang tersedia untuk umum saat ini (Android Studio 3.6 Canary 12 adalah dirilis sebelum perbaikan ini dilakukan). Itu memungkinkan Anda mengetahui komponen mana yang akan diperbarui dan versi mana yang harus diperhatikan. Sepertinya Android Studio 3.6 Canary 13 dan yang lebih baru seharusnya memilikinya https://issuetracker.google.com/issues/140403764#comment13

Sampai saat itu Anda dapat mencoba penyelesaiannya tetapi ketika ada bug vendor dan solusi tidak berhasil, Anda hanya perlu menunggu tambalan vendor.

Mike Hardy
sumber
5

Anda perlu menginstal NDK menggunakan pengelola SDK Berikut adalah petunjuk resmi tentang cara memasang NDK https://developer.android.com/studio/projects/install-ndk

Petir
sumber
4

Saya pertama kali mendapat masalah ini setelah memutakhirkan dari Android Studio 3.5.0 ke 3.5.1 hari ini.

Saya hanya melakukan rekondisi dari menu atas Build -> Rebuild Project.

Ini mungkin tidak berhasil untuk semua orang tergantung pada apa yang menyebabkan masalah tetapi berhasil untuk saya. Cobalah.

(Selain itu, saya tidak menggunakan NDK dan belum pernah mendownloadnya sebelumnya. Masih belum mendownloadnya)

Ryan
sumber
1
Saya menggunakan AS 3.5.1, proyek saya membutuhkan NDK. Mendapat kesalahan yang tepat, membersihkan dan membangun kembali memperbaikinya. Cukup mudah untuk mencobanya terlebih dahulu sebelum melakukan hal lain.
Sean
@Sean Nice, senang itu berhasil! Ngomong-ngomong, menurut saya pembangunan kembali juga dimulai dengan bersih. Saya menyadari bahwa suatu kali ketika saya membuka bilah alat build bawah dan tugas pertama 'bersih' muncul. Sejak saat itu saya baru mulai melakukan pembangunan kembali saja. (Mudah-mudahan itu melakukan apa yang saya pikir itu lol).
Ryan
4

Jika Anda tidak menggunakan NDK, abaikan errornya.

Saya telah menginstal NDK untuk melihat apakah ada perbedaan. Tidak ada perbedaan (kecuali untuk folder NDK yang tidak digunakan lebih dari 2 GB :). Jadi saya menghapusnya (yaitu menghapus folder ndk dan menghapus variabel lingkungan NDK yang telah Anda setel sebelumnya).

Pablo Alfonso
sumber
3

saya memperbaikinya dengan membuka file > Invalidate Caches\Restart IDE akan restart dan masalah akan diperbaiki

Hocine Djouamaa
sumber
buka 'file> project structre> SDK location' dan unduh NDK terakhir dan buka project 'local.properties' dan spesifikasikan lokasi NDK seperti ini 'ndk.dir = C \: \\ Users \\ Lenovo \\ AppData \ \ Local \\ Android \\ Ndk '
Hocine Djouamaa
Tidak masuk akal jika tidak digunakan (NDK)
Sahan Pasindu Nirmal
3

Setelah upgrade Android Studio saya baru-baru ini, saya mendapatkan pesan kesalahan yang sama. Saya mencoba jawaban lain di sini dan tidak ada yang berhasil. Tetapi jawaban @ Zahra mengarahkan saya ke sesuatu yang berhasil:

Buka File-> Struktur Proyek ... Di bawah " Lokasi Android NDK ", klik tarik-turun dan pilih " DEFAULT NDK Direkomendasikan ".

Ada jalur yang sedikit berbeda di sana sebelum saya memilih default. Di suatu tempat meningkatkan versi menggunakan pengelola SDK, jalurnya tampaknya telah berubah.

Dan sekarang dalam file local.properties sdk.dir disetel ke direktori yang sama dengan opsi " DEFAULT NDK Recommended ".

ByteSlinger
sumber
Setelah mencoba setidaknya 5 'solusi' yang berbeda, yang satu ini akhirnya membuat saya kembali ke jalurnya, sekarang untuk beralih ke bug Android Studio berikutnya apa pun yang terjadi ...
norlesh
2

Saya memiliki masalah yang sama. Lingkungan saya adalah:

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

Saya menghapus CMake 3.10 oleh SDKManager. (CMake yang diinstal hanya 3.6)

Sinkronisasi dan build Gradle berhasil.

(1)

android-gradle-plugin 3.1.2 menggunakan CMake 3.10.

Di android-gradle-plugin 3.1.2 (atau 3.1. +), Fitur dukungan untuk CMake 3.7 dan yang lebih tinggi adalah fitur pratinjau.

(dari pesan keluaran gradle assembleDebugatau gradle sync.)

(2)

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

SDK Manager menyertakan CMake versi bercabang 3.6.0 dan versi 3.10.2. Project yang tidak menyetel versi CMake tertentu di build.gradle dibuat dengan CMake 3.6.0.

Mungkin perilaku ini adalah android-gradle-plugin 3.3 atau yang lebih tinggi. (dari android-studio 3.3 yang dapat diunduh CMake 3.10)

android-gradle-plugin 3.1.2 menggunakan versi terbaru dari CMake yang diinstal.

Yu Kakizaki
sumber
saya melewatkan bahwa Anda menulis "Gradle 3.5" dan "build-gradle back to 3.4.2".
Yu Kakizaki
2

Saya juga mengalami masalah yang sama di Mac.

Saran: Paksa folder .gradle untuk membangun kembali sendiri ..

Ini masih menunjukkan 'Versi NDK TIDAK DIKETAHUI' di Event Log namun berhasil dibuat dan tidak memberi saya masalah apa pun. (Saya tidak memiliki NDK yang diunduh)

  1. Buka folder / Users / macuser / Anda
  2. Tekan CMD + SHIFT +. (titik / titik) untuk melihat folder tersembunyi
  3. HAPUS folder .gradle
  4. Mulai ulang Android Studio

Ini akan menyebabkan Android Studio membangun kembali dan mendownload kembali folder .gradle Anda untuk memperbaiki file yang bentrok dalam prosesnya.

Rubah
sumber
Ini berhasil untuk saya tetapi hanya untuk pertama kalinya. Jika saya membuka kembali proyek tanpa terlebih dahulu menghapus .gradle maka saya akan mendapatkan kesalahan yang sama seperti sebelumnya.
Kyle Abens
Ya, tampaknya kesalahan akan tetap ada di log. Milik saya juga sedang berjalan tetapi proyek dibangun dan berjalan dengan baik.
Fox
1

Masalahnya terpecahkan saat saya memperbarui Versi Plugin Android Gradle dari 3.1.4 menjadi 3.4.0 dan Versi Gradle dari 4.4 menjadi 5.1.1 secara bersamaan. Tentu saja, saya mendownload NDK (Side by Side) terbaru dengan SDK manager.

Hai-Yang Li
sumber
Saya juga harus meng-upgrade versi Gradle saya
BlackHatSamurai
1

Saya mengalami kesalahan yang sama setelah menambahkan beberapa perpustakaan di build.gradlefile tingkat aplikasi .
Solusinya hanya membersihkan proyek .
Di bilah menu pilih: Build >> Clean Project
Setelah itu, kesalahan telah hilang untuk saya. Saya tidak melakukan apa pun.

Abdallah
sumber
1

Dalam kasus saya, Android Studio diinstal pada mac baru. Hanya perlu mengunduh Android 9 (SDK target / kompilasi saya adalah 28) dan membangun alat. Masalahnya diselesaikan setelah ini.

Vlad B
sumber
1

Dalam kasus saya, saya memperbaikinya dengan meningkatkan ke SdkVersion 29 dan bermigrasi ke AndroidX.

AissaDevLab
sumber
1
meningkatkan target dan versi kompilasi ke sdk 29 berhasil untuk saya: D
Ziad H.
0

Setelah meningkatkan, saya mendapat masalah yang sama di salah satu proyek saya. Saya menyelesaikannya hanya dengan menghapus baris ndk.dir = D: \ Android \ SDK \ ndk-bundle dari file local.properties.

itassets
sumber
1
Jawabannya dapat dibuat lebih berharga dengan menyatakan bagaimana Anda tahu di mana menemukan file di studio android atau di sistem file dan alasan Anda dalam menentukan bahwa perubahan yang harus dilakukan.
Reenactor Rob
5
ndk.dir tidak disetel dalam proyek saya. Saya tidak pernah menggunakan NDK. Namun demikian saya mendapatkan "kesalahan" ini di Android Studio 3.5.
Jan
Sama seperti The Incredible Jan, ini bukan properti lokal saya, namun saya masih mendapatkan pesan ini. Jadi ini bukan solusi lengkap tapi mungkin bisa membantu beberapa
Mike Hardy
0

Saya mendapat kesalahan ini (dan beberapa lainnya) setelah mengimpor proyek dari kontrol versi melalui hyperlink Bitbucket.

Setelah diimpor, tutup proyek dan impor ulang menggunakan File > New > Import Project. Setelah itu semuanya dibangun dengan benar. (Jalur NDK telah ditentukan dengan benar, dan hanya mengimpor sebagai yang baru berfungsi)

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
sumber
0

Masalah terpecahkan untuk saya setelah memeriksa Saran dalam struktur Proyek dan memperbarui dua pembaruan yang disarankan. Maaf, saya tidak dapat mengingat nama modul karena menghilang segera setelah saya menekan update untuk masing-masing modul dan sinkronisasi graddle. dimulai secara otomatis dan setelah masalah ini hilang

mamadsp
sumber
0

menurunkan versi ndk dari 20 ke r17c dan versi cmake dari 3.10 ke 3.6.411459 memecahkan masalah bagi saya

asif khan
sumber
0

Saya mengalami masalah yang sama setelah memperbarui Android Studio. Masalah saya diselesaikan dengan setelah memperbarui Android SDK Build-Tools. [Tools-> SDK Manager-> SDK Tools-> Android SDK Build-Tools].

Kemudian coba Bersihkan proyek [Build-> Clean Project].

Terakhir, restart Android Studio IDE ......

Joyal Jose
sumber
0

Saya baru saja menutup proyek, menutup studio android, memulai ulang PC saya, melacak proyek saya dan menghapus folder .Idea di "B: /PROJECTNAME/.idea" dan voila.

Masalah terpecahkan. Ini mensinkronisasi ulang. T / B: gradle saya adalah androidx. semoga beruntung untuk seseorang.

Kalaiyo5
sumber
0

Ubah claaspath menjadi 'com.android.tools.build:gradle:3.5.2' dalam skrip build.gradle

Bidyut
sumber
0

Baik. Saya baru-baru ini mengunduh versi terbaru Android studio dan mendapatkan kesalahan serupa. Jadi akhirnya saya membuat proyek baru. Bahasa Kotlin yang dipilih lalu Jelly Bean (berbicara tentang opsi untuk dipilih). Kemudian seluruh sinkronisasi dimulai tetapi sinkronisasi pertama gagal dan akhirnya sinkronisasi otomatis lagi dan semuanya mulai berfungsi. Apakah mengubah kode default (teks) karena saya seorang pemula tetapi tidak mendapat pesan kesalahan. Pratinjau baik-baik saja dan saya melanjutkan pembelajaran saya. Maaf saya tidak bisa menjelaskannya lebih baik. Saya hanya seorang pemula. Oh! Anda harus terhubung ke Internet agar dapat berfungsi.

ANTHONY MELAH
sumber
0

Jika masalah ini terjadi setelah Android Studio diupgrade dan Anda memulai update plugin dari kanan bawah, notifikasi: Buka File > Project structure, lalu ubah versi Android Gradle ke versi Android Studio dan downgrade versi Gradle ke versi sebelumnya.

Dalam kasus saya, saya menurunkan versi plugin Android Gradle dari 3.5.3 menjadi 3.2.1 dan versi Gradle dari 5.4.1 menjadi 4.6.

Walelgn
sumber
0

Saya memodifikasi file gradle-wrapper.properties versi gradle dari 4.1 menjadi 4.6.

Jokeen
sumber
0

Saya memiliki masalah ini dan tidak ada solusi yang berhasil untuk saya. Masalahnya, kesalahan atau peringatan ini mungkin muncul karena alasan yang sangat luas. Anda dapat mengikuti langkah-langkah ini untuk mencari tahu apa yang salah:

NDK tidak ada

Saat Gradle mulai mengompilasi dependensi native, Gradle akan membuat folder ".cxx" di folder "app" Anda. di dalam folder itu Anda dapat menemukan file "ndk_locator_record.json", yang merupakan jenis file log yang sangat aneh. Ini pada dasarnya adalah semua jalur yang diperiksa Gradle untuk menemukan folder NDK. Jika ada error atau ketidakcocokan pada nomor versi NDK, Anda dapat melihat di file ini.

Build NDK gagal

karena beberapa alasan yang tidak diketahui (mungkin bug di Gradle) ndk build tidak menampilkan error sebenarnya pada jendela event log, melainkan menampilkan kegagalan, seperti sinkronisasi Gradle gagal: mengeksekusi build native eksternal untuk ndkBuild .... diikuti oleh NDK Resolution Outcome: Project pengaturan: Model Gradle version = 5.4.1, versi NDK TIDAK DIKETAHUI .

Dalam hal ini kembali ke .cxx> ndkBuild> debug> x86 (x64 atau cpu arch lainnya) Di sini, di folder ini Anda dapat menemukan file "json_generation_record.json", itu adalah jenis log yang sama, biasanya entri terakhir memiliki kesalahan sebenarnya . Misalnya, bagi saya dulu

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

Dari sini Anda memiliki titik awal untuk mencari tahu apa yang salah.

Keivan
sumber
0

Jika NDK belum diinstal, dan Proyek Android memerlukannya, instal NDK terlebih dahulu.

Pada OS windows, tambahkan jalur NDK ke variabel lingkungan PAT H. Ini akan memperbaiki masalah versi.

Dalam kasus saya, jalur NDK adalah C: \ Users \\ AppData \ Local \ Android \ Sdk \ ndk \ 21.0.6113669

tanni tanna
sumber
0

Saya menghadapi masalah ini sebelumnya dan saya memperbaikinya dengan memastikan memiliki izin yang tepat ke direktori aplikasi.

Saya menggunakan macOS, jadi saya lakukan:

chmod -R 777 your_android_project

dan masalahnya hilang.

Mohammad Salem
sumber
-1

Saya mengalami masalah ini juga ketika saya memperbarui Versi Plugin Android Gradle dari 3.1.2 menjadi 3.5.1

Berikut adalah cara mengatasi masalah ini:

Masuk ke gradle.properties filedalam folder root proyek Anda dan tambahkanandroid.useDeprecatedNdk=true

inggo topan
sumber