Lokasi SDK tidak ditemukan. Tentukan lokasi dengan sdk.dir di file local.properties atau dengan variabel lingkungan ANDROID_HOME

271

Baru-baru ini saya mencoba mengimpor sampel game Android yang saya unduh dari situs web pengembang Google. Setelah mengimpornya ke Android Studio, saya mendapatkan kesalahan berikut:

Kesalahan: Lokasi SDK tidak ditemukan. Tentukan lokasi dengan sdk.dirdalam file local.properties atau dengan ANDROID_HOMEvariabel lingkungan.

Apa ini? Saya ingin menjalankan program sampel dari Android Studio.

Sameer Shamsudeen
sumber

Jawaban:

246

Silakan ikuti langkah-langkah di bawah ini untuk saya:

  • Buka Project asli-reaksi Anda lalu pergi ke direktori android Buat file dengan nama berikut:

properti lokal

  • Buka file dan tempel jalur Android SDK Anda seperti di bawah ini:

Untuk pengguna windows:

sdk.dir=C:\\Users\\UserName\\AppData\\Local\\Android\\sdk

Ganti UserName dengan nama pengguna pc Anda. Pastikan juga foldernya adalah SDK atau SDK. Dalam kasus saya, nama pengguna komputer saya adalah Zahid sehingga jalannya terlihat seperti:

sdk.dir=C:\\Users\\Zahid\\AppData\\Local\\Android\\sdk

Untuk pengguna Mac:

sdk.dir = /Users/USERNAME/Library/Android/sdk

Di mana USERNAME adalah nama pengguna OSX Anda .

Untuk pengguna Linux (Ubuntu):

sdk.dir = /home/USERNAME/Android/Sdk

Di mana USERNAME adalah nama pengguna linux Anda (jalur Linux peka terhadap huruf besar-kecil: pastikan huruf Sdalam Sdkcocok)

Jika ini tidak berhasil, tambahkan variabel ANDROID_HOME di "Variabel Lingkungan" sebagai C:\Users\USER\AppData\Local\Android\Sdk

masukkan deskripsi gambar di sini

Hoque MD Zahidul
sumber
saya bekerja dengan cv terbuka apa yang harus saya lakukan untuk menambahkan NDK?
Tidak bersalah
Itu membantu. Sebenarnya solusi ini mengisyaratkan kesalahan kata itu sendiri. Saya menggunakan IntelliJ di Mac dan dalam struktur proyek saya memiliki jalur yang benar SDK. Mengapa saya masih membutuhkannya di local.properties?
Alexei Martianov
245

Proyek mungkin kehilangan settings.gradlefile. Pastikan file ada dari proyek yang Anda impor. Jika tidak menambahkan settings.gradlefile dengan yang berikut:

include ':app'

Simpan file dan letakkan di folder tingkat atas di proyek Anda.

Yusuf
sumber
16
Bagaimana saya bisa tahu jika proyek saya hilang settings.gradle? Di mana file itu biasanya disimpan? Di mana saya mengetik include ':app'? Apa sebenarnya yang include ':app'dilakukan / hasilkan? Bisakah Anda menambahkan lebih detail pada jawaban Anda?
Tot Zam
1
@TotZam disimpan di root proyek Anda
Joseph
2
Menemukannya. Terima kasih. Untuk referensi di masa mendatang, di mana saya akan lari include ':app'? Saya cukup baru di Android dan mencoba menemukan jalan saya.
Tot Zam
2
Anda tidak menjalankan include :app, jika Anda menggunakan Android Studio, yang memungkinkan Android Studio menambahkan modul proyek Anda sehingga Anda dapat menjalankannya tanpa konfigurasi lebih lanjut. Setelah Anda menambahkan baris, settings.gradleAnda akan melihat Playtombol menjadi aktif setelah gradle selesai membangun dan mengunduh paket
Joseph
1
Masukkan nama folder proyek Anda alih-alih 'aplikasi' jika berbeda. Berhasil.
Priyank Patel
158

Saya tahu jawaban ini terlambat, tetapi saya harap ini membantu orang lain.

Jawabannya sederhana. Anda hanya perlu menyalin local.propertiesfile Anda ke folder tempat proyek disimpan dan itu akan berfungsi seperti pesona. Tapi ingat, itu harus ditempatkan di folder root tempat proyek disimpan.

Harsh Mittal
sumber
3
Tapi saya harus menyalinnya setiap saat? Ini tampaknya seperti
retasan
Ini adalah solusi paling mudah untuk masalah ini karena Anda tidak perlu mengubah apa pun dalam proyek. Ada juga solusi lain di mana Anda harus melakukan perubahan dalam kode, tetapi saya pikir untuk masalah seperti itu orang tidak dapat membuang banyak waktu.
Harsh Mittal
Ini berfungsi untuk saya ketika saya mengalami masalah ini setelah mengunduh ExoPlayer 2.1.
user1147171
2
Ini berfungsi, tetapi tidakkah Intelij menghasilkan ini secara otomatis? tks!
cesarsicas
4
Ini tidak bekerja untuk saya. File ini ada, tetapi saya masih memiliki kesalahan
rommex
42

Masalah ini terjadi ketika Anda mencoba mengimpor proyek Android Studio dari file ../app/build.gradle .

Impor proyek dengan memilih file ../build.gradle yang terletak di direktori root proyek Anda.

Michael Saffold
sumber
39

Silakan ikuti poin-poin berikut ini untuk saya:

  1. Pergi ke Project -> Android
  2. Buat file local.properties
  3. Buka file
  4. Rekatkan jalur Android SDK Anda bergantung pada sistem operasi:

    4.a Windows

    sdk.dir = C:/Users/USERNAME/AppData/Local/Android/sdk

    4.b Linux atau MacOS

    sdk.dir = /home/USERNAME/Android/sdk

    Ganti USERNAMEdengan nama pengguna Anda

Anjali-Systematix
sumber
Sudah terlambat untuk berkomentar, tetapi saya ingin tahu bagaimana melakukannya di MacOS?
Nauman Moazzam
di MacOS Anda perlu melakukan prosedur yang sama hanya Anda perlu menemukan jalur file Android SDK Anda dan menempelkannya file local.properties ... itu saja
Shuvo
37

Lihat di file properti lokal Anda

sdk.dir=C\:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk

tulis format ini dengan benar, dan juga periksa / slas gunakan untuk path

Qutbuddin Bohra
sumber
Saya mengedit local.properties dengan sdk.dir = C: \\ Users \\ sameer \\ Android \\ adt-bundle-windows-x86-20140702 \\ sdk, ada kesalahan dalam hal ini
Sameer Shamsudeen
ya setelah C menempatkan \ ... Svae dengan ini harap dilakukan. sdk.dir = C \: \\ Pengguna \\ sama \\ Android \\ adt-bundle-windows-x86-20140702 \\ sdk
Qutbuddin Bohra
Ini berfungsi baik dengan gerhana. Cukup buat file local.properties dalam proyek yang diunduh dan rekatkan sdk.dir. Dalam kasus saya itu adalah: "sdk.dir = C \: \\ adt-bundle-windows-x86_64-20140321 \\ sdk"
George Papatheodorou
jika ada yang menghadapi Anda belum menerima perjanjian lisensi ... kesalahan setelah langkah di atas lihat di sini stackoverflow.com/a/41078173/1778834
yashhy
Saya telah menginstal Android di windows saya 10 m / c tetapi tidak ada folder seperti itu sdk.dir = C \: \\ Users \\ USERNAME \\ AppData \\ Local \\ Android?
Rohan Gala
27

Berikut ini cara mengatasi masalah ketika Anda mengklik "Jalankan Aplikasi" (panah hijau) dan dapatkan yang berikut dalam dialog Edit Konfigurasi :

Kesalahan: Silakan pilih Android SDK

Di Android Studio, lakukan:

  1. Dari menu, pilih File > Settings.
  2. Dalam dialog pengaturan, buka Appearance & Behavior > System Settings > Android SDK.
  3. Lihat di atas untuk Lokasi Android SDK , dan klik Edittombol
  4. Tekan Next, Next, Finish untuk menerima default

Ini sepertinya menyelamatkan lokasi SDK - walaupun tidak ada yang berubah - menjadi beberapa lokasi internal. Saya memeriksa folder .ideadan .gradletetapi tidak melihat apa yang Studio lakukan untuk mengubah file konfigurasi - tetapi sekarang saya dapat menjalankan aplikasi.

Dan untuk meringkas perbaikan sebelumnya - ini biasanya OK untuk repo tanpa masalah build:

  • local.properties file disalin ke dalam folder root dengan Studio.

  • Jalur di file local.properties memiliki jalur yang benar ke SDK android - dalam kasus saya ini sdk.dir=C:\\android\\sdk (perhatikan bahwa jalur ini memiliki format yang berbeda - Studio harus menulis file ini untuk Anda berdasarkan bidang Entri Teks di Pengaturan Android SDK di Android SDK Settings dialog)

  • file settings.gradle hadir dalam repo - dan referensi folder aplikasi (biasanya: aplikasi)

Jim Andreas
sumber
3
Ini adalah satu-satunya hal yang membantu saya. Langkah # 3 dan # 4 sangat penting
soshial
16

Jika Anda memiliki masalah ini ketika Anda menarik proyek yang bereaksi asli, Anda hanya perlu membuka proyek android dengan Android Studio. Semua yang Anda butuhkan akan dibuat secara otomatis.

  • Buka Android Studio
  • File -> Buka
  • Pilih androidfolder di bawah folder proyek asli-reaksi Anda
  • Tunggu AndroidStudio untuk menyelesaikan pengaturan
  • Anda sekarang dapat menutup Android Studio

ATAU

Jika Anda telah menginstal peluncur baris perintah AndroidStudio :

  • Jalankan ini di folder root reaksi-asli Anda
studio android/
  • Tunggu AndroidStudio untuk menyelesaikan pengaturan
  • Anda sekarang dapat menutup Android Studio
gianlucaparadise
sumber
1
Ini Bekerja untuk saya
Vikram Rajput
12

Di Linux:

Jika Anda telah mengunduh SDK android tetapi tidak ditemukan.

Masalahnya mungkin file tersebut local.propertiesharus berada di dalam direktori yang sama dengan gradlehal-hal untuk gradlemenemukannya ketika membangun dan menjalankan adb.

Untuk proyek asli-reaksi saya menggunakan gradlesaya harus meletakkan local.propertiesfile ke Myprojectname/android/folder.

Karena saya telah membuka ritsleting SDK ke Unduhan jadi saya hanya menggunakan jalur itu di file dengan baris seperti ini:

sdk.dir=/home/USER/Downloads/android-sdk-linux
Mika
sumber
11

Saya mengatasi masalah ini dengan membuat variabel lingkungan ANDROID_HOME sebagai berikut di windows.

ANDROID_HOME=C:\Users\<user_name>\AppData\Local\Android\sdk

Mulai ulang Android Studio, itu harus membangun proyek!

mumair
sumber
Saya sudah memiliki ANDROID_SDK yang menunjuk ke dir yang sama, jadi bagi saya ituANDROID_HOME=$ANDROID_SDK
Martijn
10

Saya menemukan masalah yang sama tetapi sedikit pesan kesalahan yang berbeda

Lokasi SDK tidak ditemukan. Tentukan lokasi dengan variabel lingkungan ANDROID_SDK_ROOT atau dengan menyetel jalur sdk.dir di file properti lokal proyek Anda di "xxx"

MAC & ReactNative

Menambahkan local.properties

  1. Temukan lokasi Android SDK Anda

    /Users/yourMacUserName/Library/Android/sdk
  2. Buat di local.propertiesbawah rootProject/android/local.properties.

  3. Tambahkan path sdk ke dalamnya

    sdk.dir = /Users/yourMacUserName/Library/Android/sdk

Ini biasanya bekerja, tetapi jika Anda bekerja dalam tim dengan anggota tim lain, maka yourMacUserNameberbeda.

ATAU

Setel ANDROID_SDK_ROOTvariabel

  1. Edit Anda ~/.zshrcatau ~/.bashrcatau ...
  2. Tambahkan jalur SDK:

    export ANDROID_SDK_ROOT=$HOME/Library/Android/sdk
  3. Buka tab terminal baru atau source ~/.zshrc
  4. echo $ANDROID_SDK_ROOT untuk menguji cetak jalur SDK yang benar.

Atau, Anda juga dapat menambahkan jalur Anda untuk menggunakan beberapa perintah yang berguna.export PATH=${PATH}:$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools

William Hu
sumber
9

Jika Anda mencoba menjalankan kode sampel Google android, cobalah mengimpor seluruh repositori alih-alih sampel individual .

Berikut adalah bagian yang relevan dari instructions.html , termasuk dengan kode sampel API Kalender Google

  • Impor proyek kalender-android-sampel
    • Pilih "Impor Proyek ..." atau File> Impor Proyek ...
    • Pilih [someDirectory] /google-api-java-client-samples/build.gradle dan klik OK.
      • Catatan: ini tidak akan berfungsi jika Anda mencoba mengimpor [someDirectory] /google-api-java-client-samples/calendar-android-sample/build.gradle
    • Pilih "Gunakan distribusi gradle lokal" dengan "Gradle home" dari [someDirectory] /gradle-2.2.1 dan klik OK.
Nate
sumber
6

Tidak ada alasan tunggal untuk kesalahan ini.

  1. settings.gradle mungkin hilang atau konten di dalamnya mungkin salah.
  2. local.properties mungkin hilang atau jalur sdk mungkin salah ditulis.
Arhat Baid
sumber
1
konten apa yang harus ada di file settings.gradle?
cabanni
@cabanni settings.gradle hanya menyertakan modul dalam aplikasi Anda. Secara default itu akan menjadi modul 'aplikasi'. Semoga membantu /
Arhat Baid
5

Cukup Hapus folder .idea dan impor proyek lagi. Ini berhasil untuk saya.

Akshay Sharma
sumber
4

buat file properti lokal di direktori root proyek Anda dengan konten berikut

## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
#Tue Oct 24 17:40:53 CEST 2017

sdk.dir=/Users/****/Library/Android/sdk
Ilker Baltaci
sumber
4
  1. Buka Proyek asli-React Anda -> Android
  2. Buat file local.properties

  3. Buka file

  4. tempel jalur Android SDK Anda seperti di bawah ini

     in Windows sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
    
     in macOS sdk.dir = /Users/USERNAME/Library/Android/sdk
    
     in linux sdk.dir = /home/USERNAME/Android/Sdk
  5. Ganti USERNAME dengan nama pengguna Anda

  6. Sekarang, Jalankan reaksi-asli run-android di terminal Anda

atau

Terkadang proyek mungkin kehilangan file settings.gradle. Pastikan file ada dari proyek yang Anda impor. Jika tidak menambahkan file settings.gradle dengan yang berikut ini:

    include ':app'

Simpan file dan letakkan di folder tingkat atas di proyek Anda.

Dinush Chathurya
sumber
3

letakkan kedua baris ini di file .bashrc Anda dan jalankan source ~/.bashrc

export ANDROID_HOME=/Users/$USER/Library/Android/sdk export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

Untuk linux saya melakukan ini. (Untuk baris pertama)

export ANDROID_HOME=/home/$USER/Android/Sdk
Tzvetlin Velev
sumber
2

cara terbaik dan termudah adalah membuat folder "aplikasi" pemindahan proyek Android baru dari proyek yang tidak berfungsi ke proyek yang baru dibuat dan menambahkan dependensi yang diperlukan dalam gradasi proyek baru Anda dan semuanya akan bekerja dengan sempurna)

Armen Hovhannisian
sumber
Ini memperbaiki masalah pada mac High Serria dan Windows 10. Jawaban yang bagus dan efisien.
Val
2

Jika semuanya gagal, salin local.propertiesfile ke root direktori proyek. Secara sederhana.

tim4dev
sumber
2

Untuk pengguna Mac / Linux

Anda perlu menambahkan ANDROID_HOMEke jalur Anda, tambahkan berikut ini ke .bashrc || .zshrc || .profilefile Anda

# change $HOME to the path where you installed android Sdk
export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/tools

Lalu lari

$ source ~/.bashrc || .zshrc || .profile

Variabel lingkungan di bash_profile atau bashrc?

Perbedaan antara .bashrc dan .bash_profile

Junius L.
sumber
2

Solusi ini benar-benar berfungsi untuk saya .. buka pc ini -> properti -> pengaturan sistem lanjutan -> variabel lingkungan -> lalu dalam variabel sistem buat variabel baru dengan nama ANDROID_SDK_ROOT dan beri nilai C: \ Users {USERNAME (Ganti dengan nama pengguna Anda } \ AppData \ Local \ Android \ Sdk

dan pastikan bahwa jika ponsel android nyata menggunakan usb debugging diaktifkan. (sangat penting)

kemudian tutup cmd dan restart itu seharusnya bekerja.

Hrishikesh Baidya
sumber
2

Dalam kasus saya, saya harus menutup Project dan membuka lagi. Itu bekerja dengan baik. Seperti ini

Tutup Proyek

masukkan deskripsi gambar di sini

Dan lagi Buka Proyek Lagi

masukkan deskripsi gambar di sini

Muhaiminur Rahman
sumber
Setelah menambahkan path sdk.dir dan juga ke ~ / .bashrc, tidak ada yang berhasil. Tapi kemudian saya menutup dan membuka lagi dan berhasil. Terima kasih!
grc
1

Saya mendapatkan kesalahan ini setelah baru saja mengkloning repositori. Saya berharap properti lokal akan dihasilkan secara otomatis, tetapi ternyata tidak. Saya dapat membuatnya dengan mengimpor kembali proyek Gradle.

File > Re-import Gradle Project
M. Palsich
sumber
Ini membantu. Setelah "Re-import Gradle Project" diluncurkan, 2 kesalahan berikut dicetak ke konsol yang membantu saya mendeteksi masalah: Konfigurasi JDK Gradle Tidak Valid ditemukan , Project JDK tidak ditentukan . Jadi semuanya mulai berfungsi setelah saya memperbaiki jalur JDK di Pengaturan.
Michal Vician
Setelah path JDK diperbaiki, saya juga harus me-restart IDE dengan opsi "File> Invalidate Caches / Restart ...".
Michal Vician
1

Siapa pun yang menggunakan Jenkins, mungkin berguna

Anda perlu mendefinisikan nama variabel global ANDROID_HOMEdengan nilai path ke android sdk.

Untuk mac, itu /Users/YOUR_USER_NAME/Library/Android/sdk

touhid udoy
sumber
1

saya berpikir file setting.gradle Anda tidak ada. Salin file ini ke proyek lain dan tempel proyek Anda. Saya pikir itu akan berhasil.

dalam file setting.gradle,

include ':app'

itu saja. Semoga harimu menyenangkan.

ozanurkan
sumber
1

Bagi saya masalahnya adalah bahwa saya belum membuat perangkat virtual setelah instalasi baru studio android. Jadi, expo terus-menerus mengeluh tentang lokasi SDK sementara masalah utama adalah perangkat virtual yang hilang. Semoga ini bisa membantu seseorang di masa depan, membuat saya mencari beberapa jam.

PS: di sini Anda dapat mengetahui cara membuatnya https://developer.android.com/studio/run/managing-avds

Omar Dulaimi
sumber
0

Periksa, 1. Dalam Pengaturan modul, apakah, lokasi SDK sudah benar. 2. Jika Ya, periksa file properti lokal (Bukan yang ditempatkan di dalam modul aplikasi, tetapi yang ditempatkan di luar modul aplikasi, di tingkat induk). Jika tidak ada, tambahkan dengan garis di bawahnya.

sdk.dir=/path/to/sdk/../Android/Sdk
Max Droid
sumber
0

Saya baru saja menghadapi masalah ketika saya mengkloning repo saya dari Github dan berlari ./gradlew clean assembleDebug. Saya mengonfirmasi bahwa saya memiliki ANDROID_HOME di file .bashrc saya.

Jadi, saya mengimpor proyek ke Android Studio. Memperhatikan bahwa ekstensi file settings.gradle saya adalah .kts, settings.gradle.kts. Ketika saya selesai dengan impor maka saya berlari ./gradlew clean assembleDebugdan tidak mendapatkan masalah apa pun.

Hesam
sumber
0

Saya mencoba

sdk.dir = \Users\OLUWAGBEMIGA\AppData\Local\Android\sdk 

dan itu berhasil, saya cukup menempelkannya di folder proyek dan di luar.

Dalam variabel lingkungan saya juga menggunakan tautan SDK di atas dan nama ANDROID_HOMEsebagai nama jalur. Tutup semuanya buka kembali dan Cabom semuanya bekerja

John Akinola
sumber