我最近尝试导入从 Google 开发者网站下载的示例 Android 游戏。将它们导入 Android Studio 后,出现以下错误:
错误:未找到 SDK 位置。使用 local.properties 文件中的 sdk.dir 或使用 ANDROID_HOME 环境变量定义位置。
这是什么?我想从 Android Studio 运行示例程序。
请按照以下步骤对我有用:
转到您的 react-native 项目,然后转到 android 目录创建一个具有以下名称的文件:
本地属性
打开文件并粘贴您的 Android SDK 路径,如下所示:
对于 Windows 用户:
sdk.dir=C:\\Users\\UserName\\AppData\\Local\\Android\\sdk
将 UserName 替换为您的 PC 用户名。还要确保文件夹是 sdk 或 Sdk。在我的情况下,我的计算机用户名是 Zahid,所以路径如下所示:
sdk.dir=C:\\Users\\Zahid\\AppData\\Local\\Android\\sdk
对于 Mac 用户:
sdk.dir = /Users/USERNAME/Library/Android/sdk
其中 USERNAME 是您的 OSX 用户名。
对于 Linux (Ubuntu) 用户:
sdk.dir = /home/USERNAME/Android/Sdk
其中 USERNAME 是您的 linux 用户名(Linux 路径区分大小写:确保 Sdk
中的 S
大小写匹配)
如果这不起作用,请在“环境变量”中添加 ANDROID_HOME 变量作为 C:\Users\USER\AppData\Local\Android\Sdk
https://i.stack.imgur.com/LDiPS.png
项目可能缺少 settings.gradle
文件。确保该文件存在于您正在导入的项目中。如果不添加具有以下内容的 settings.gradle
文件:
include ':app'
保存文件并将其放在项目的顶级文件夹中。
settings.gradle
?该文件通常存储在哪里?我在哪里输入 include ':app'
? include ':app'
究竟做了什么/产生了什么?您能否在答案中添加更多细节?
include ':app'
?我对 Android 很陌生,并试图找到自己的方式。
include :app
,它允许 Android Studio 添加您的项目模块,以便您无需进一步配置即可运行它。在 settings.gradle
中添加该行后,您会注意到 Play
按钮在 gradle 完成构建和下载包后变为活动状态
我知道这个答案很晚,但我希望它对其他人有所帮助。
答案很简单。您只需将 local.properties
文件复制到存储项目的文件夹中,它就会像魅力一样工作。但请记住,它必须放在存储项目的根文件夹中。
请遵循以下几点对我有用:
转到您的项目 - > Android 创建文件 local.properties 打开文件 根据操作系统粘贴您的 Android SDK 路径: 4.a Windows sdk.dir = C:/Users/USERNAME/AppData/Local/Android/sdk 4 .b Linux 或 MacOS sdk.dir = /home/USERNAME/Android/sdk 将 USERNAME 替换为您的用户名
File > Project Structure
,它说 SDK 位置不正确,并在 MacOS 上为我修复了它
签出你的 local.properties 文件
sdk.dir=C\:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
正确编写此格式,并使用路径检查 / slas
当您尝试从 ../app/build.gradle 文件导入 Android Studio 项目时会遇到此问题。
通过选择位于项目根目录中的 ../build.gradle 文件来导入项目。
当您单击“运行应用程序”(绿色箭头)并在“编辑配置”对话框中获得以下信息时,这是一个解决该问题的方法:
错误:请选择 Android SDK
在 Android Studio 中,执行:
从菜单中,选择文件 > 设置。在设置对话框中,转到外观和行为 > 系统设置 > Android SDK。查看顶部的 Android SDK Location,然后单击 Edit 按钮 Hit Next, Next, Finish 接受默认值
这似乎将 SDK 位置(即使没有任何变化)保存到某个内部位置。我检查了 .idea
和 .gradle
文件夹,但没有看到 Studio 做了什么来更改配置文件 - 但现在我可以运行应用程序了。
总结一下之前的修复——对于没有构建问题的 repo,这些通常是可以的:
local.properties 文件由 Studio 复制到根文件夹中。 local.properties 文件中的路径具有到 android SDK 的正确路径 - 在我的情况下,它是 sdk.dir=C:\\android\\sdk (请注意,此路径具有不同的格式 - Studio 应该为您基于 Android SDK 设置对话框中的文本输入字段) settings.gradle 文件存在于存储库中 - 并引用应用程序文件夹(通常为:app)
我遇到了同样的问题,但有一点不同的错误信息
未找到 SDK 位置。使用 ANDROID_SDK_ROOT 环境变量或通过将项目本地属性文件中的 sdk.dir 路径设置为“xxx”来定义位置
MAC & ReactNative
添加local.properties
找到你的 Android SDK 位置 /Users/yourMacUserName/Library/Android/sdk 在 rootProject/android/local.properties 下创建 local.properties。在其中添加 sdk 路径 sdk.dir = /Users/yourMacUserName/Library/Android/sdk
这通常有效,但如果您与其他团队成员一起工作,那么 yourMacUserName
就不同了。
或者
设置 ANDROID_SDK_ROOT
变量
编辑您的 ~/.zshrc 或 ~/.bashrc 或 ... 添加 SDK 路径:export ANDROID_SDK_ROOT=$HOME/Library/Android/sdk 打开一个新的终端选项卡或源 ~/.zshrc echo $ANDROID_SDK_ROOT 以测试打印正确的 SDK小路。
或者,您也可以添加路径 export PATH=${PATH}:$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools
以使用一些有用的命令。
eas.json
生产(或其他模式)确保您有 { "env": { "ANDROID_SDK_ROOT": "/your/path/to/androidSDK" }
转到您的 React-native 项目 -> Android 创建一个文件 local.properties 打开文件粘贴您的 Android SDK 路径,如下所示 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 用您的用户名替换 USERNAME 现在,在您的系统中运行 react-native run-android终端
或者
有时项目可能缺少 settings.gradle
文件。确保该文件存在于您正在导入的项目中。如果不添加具有以下内容的 settings.gradle
文件:
include ':app'
保存文件并将其放在项目的顶级文件夹中。
如果在拉取 react-native 项目的时候出现这个问题,只需要用 Android Studio 打开 android 项目即可。您需要的一切都会自动创建。
打开安卓工作室
文件 -> 打开
选择你的 react-native 项目文件夹下的 android 文件夹
等待 AndroidStudio 完成设置
您现在可以关闭 Android Studio
或者
如果您已安装 AndroidStudio command line launcher:
在您的 react-native 根文件夹中运行它
studio android/
等待 AndroidStudio 完成设置
您现在可以关闭 Android Studio
在 Linux 中:
如果您已经下载了 android SDK 但找不到它。
问题可能是文件 local.properties
需要与 gradle
东西位于同一目录中,以便 gradle
在构建和运行 adb 时找到它。
对于使用 gradle
的 react-native 项目,我需要将 local.properties
文件放入 Myprojectname/android/
文件夹。
因为我已将 SDK 解压缩到下载,所以我只需在文件中使用该路径,并使用如下行:
sdk.dir=/home/USER/Downloads/android-sdk-linux
我通过在 Windows 中创建 ANDROID_HOME 环境变量解决了这个问题,如下所示。
ANDROID_HOME=C:\Users\<user_name>\AppData\Local\Android\sdk
重新启动 Android Studio 它应该构建项目!
ANDROID_HOME=$ANDROID_SDK
如果您尝试运行 Google android 示例代码,请尝试导入整个存储库而不是单个示例。
这是 instructions.html,包含在 Google Calendar API sample code 中。
导入 calendar-android-sample 项目 选择“Import Project...”或 File > Import Project... 选择 [someDirectory]/google-api-java-client-samples/build.gradle 并单击 OK。注意:如果您尝试导入 [someDirectory]/google-api-java-client-samples/calendar-android-sample/build.gradle 将无法使用 [someDirectory] 的“Gradle home”选择“使用本地 gradle 分发” /gradle-2.2.1 并单击确定。
只需删除 .idea 文件夹并再次导入项目。它对我有用。
这个错误没有一个单一的原因。
settings.gradle 可能丢失或其中的内容可能有误。 local.properties 可能丢失或 sdk 路径可能写错。
我在颤振中遇到了这个错误,所以我通过转到 android->app->build.gradle 来修复它
并将 targetSdkVersion 从 28 更改为 29 并将 compileSdkVersion 从 28 更改为 29 它对我有用
就我而言,我使用的是 linux 并在 local.properties 内的路径周围加上双引号,例如
sdk.dir = "/root/Android/Sdk/"
export ANDROID_SDK_ROOT = "/root/Android/Sdk/"
所以应该是
sdk.dir = /root/Android/Sdk/
export ANDROID_SDK_ROOT = /root/Android/Sdk/
和 .bash_profile
https://i.stack.imgur.com/HJb25.png
在项目的根目录中创建一个 local.properties 文件,内容如下
## 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
就我而言,我不得不关闭 Project 并再次打开。它工作得很好。像这样
关闭项目
https://i.stack.imgur.com/Brcpj.png
再次打开项目
https://i.stack.imgur.com/8EDWX.png
遵循以下步骤:
在 'android' 文件夹下创建一个名为 'local.properties' 的文件 在文件 'local.properties' 中添加这一行作为 sdk.dir=/Users/bijendrasingh/Library/Android/sdk
在此处添加您的 android sdk 路径。
将这两行放在您的 .bashrc 文件中并运行 source ~/.bashrc
export ANDROID_HOME=/Users/$USER/Library/Android/sdk export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
对于 linux,我这样做了。(对于第一行)
export ANDROID_HOME=/home/$USER/Android/Sdk
这个解决方案实际上对我有用.. 转到这台电脑 -> 属性 -> 高级系统设置 -> 环境变量 -> 然后在系统变量中创建名称为 ANDROID_SDK_ROOT 和值 C:\Users{USERNAME( 将其替换为您的用户名的新变量}\AppData\Local\Android\Sdk
并确保是否启用了使用 USB 调试的真正 android 手机。 (很重要)
然后关闭 cmd 并重新启动它应该可以工作。
可能有两种不同的可能性:
1)。您的 SDK 位置在 local.properites 文件中不正确。
2)。或者文件丢失,如果你已经克隆了一个项目,就会出现这种情况,所以只需在 Gradle Scripts 文件夹下创建一个 local.properites 文件,然后设置 sdk 路径。
像这样设置正确的 sdk 路径:
sdk.dir=YOUR_PATH_TO_THE_SDK
对于 mac 用户,路径应该是:
/Users/USER_NAME/Library/Android/sdk
对于 Windows 用户,路径应该是:
c:\Users\USER_NAME\AppData\Local\Android\Sdk
最好和最简单的方法是创建新的 Android 项目,将“app”文件夹从非工作项目移动到新创建的项目,并在新项目的 gradle 中添加所需的依赖项,一切都会完美运行)
新克隆存储库后出现此错误。我希望 local.properties 会自动生成,但事实并非如此。我能够通过重新导入 Gradle 项目来生成它。
File > Re-import Gradle Project
如果所有其他方法都失败,请将 local.properties
文件复制到项目目录的根目录。简单地。
任何使用 Jenkins 的人都可能会觉得它有用
您需要使用 android sdk 的路径值定义一个全局变量名称 ANDROID_HOME
。
对于 mac,它是 /Users/YOUR_USER_NAME/Library/Android/sdk
对于 Mac/Linux 用户
您需要将 ANDROID_HOME
添加到您的路径,将以下内容添加到您的 .bashrc || .zshrc || .profile
文件
# change $HOME to the path where you installed android Sdk
export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/tools
然后运行
$ source ~/.bashrc || .zshrc || .profile
Environment variables in bash_profile or bashrc?
Difference between .bashrc and .bash_profile
我有一种情况,我已经设置了 local.properties 文件,但我仍然收到此错误。事实证明,如果您的项目有子模块,您还必须将 local.properties 复制到子模块文件夹中。
检查, 1. 在模块设置中,SDK 位置是否正确。 2. 如果是,请检查 local.properties 文件(不是放在应用程序模块内的文件,而是放在应用程序模块外的父级)。如果不存在,请在其中添加以下行。
sdk.dir=/path/to/sdk/../Android/Sdk
不定期副业成功案例分享
eas build
(expo build
已被弃用),这将不再有效,您必须在eas.json
中定义 env 变量,Android SDK 的路径也可能不同(我没有我的主目录中没有它)