如何解決Android Studio安裝時無法下載SDK的問題(Windows、Linux、Mac解決方案大全)

如何解決Android Studio安裝時無法下載SDK的問題(Windows、Linux、Mac解決方案大全)

前言

對于全棧開發者而言,安裝 Android Studio 是邁向 Android 開發的第一步,但在 Windows、Linux、macOS 等不同平臺上,經常會遇到“無法下載 SDK”或“SDK Manager 下載超時”等問題。本教程將從環境準備、網絡設置、鏡像替換、手動導入等多角度給出超詳細的解決方案,幫助你一步步排除故障,順利安裝并使用 SDK。

作者?? 貓頭虎 微信號:Libin9iOak 公眾號:貓頭虎技術團隊 萬粉變現經紀人:CSDNWF


如何解決Android Studio安裝時無法下載SDK的問題(Windows、Linux、Mac解決方案大全)

作者??
貓頭虎微信號:Libin9iOak
公眾號:貓頭虎技術團隊
萬粉變現經紀人:CSDNWF


目錄

  1. 前言

  2. 常見原因分析

  3. 通用準備工作

  4. Windows 下的解決方案

    1. 檢查網絡與代理
    2. 配置 Android Studio 鏡像源
    3. 手動下載并導入 SDK
  5. Linux 下的解決方案

    1. 環境變量與代理設置
    2. 使用命令行工具安裝 SDK
    3. 更換鏡像源
  6. macOS 下的解決方案

    1. Homebrew 安裝及更新
    2. 配置代理與鏡像
    3. 手動導入 SDK
  7. 常見問題與答疑

  8. 總結


常見原因分析

  1. 網絡不穩定或被墻:國內訪問 Google 服務可能會被防火墻阻斷。
  2. 代理未正確配置:如果使用公司或校園網代理,需要在 Android Studio 中同步設置。
  3. 鏡像源不可用或延遲高:默認官方源在國內訪問速度很慢。
  4. 防火墻或殺毒軟件攔截:可能會阻止 Android Studio 與外部服務器通信。
  5. 權限不足:沒有管理員/Root 權限,導致無法寫入 SDK 目錄。

通用準備工作

  • 確認系統時間和時區正確:錯誤的時間會導致 SSL 證書校驗失敗。
  • 關閉或臨時禁用防火墻、殺毒軟件:排查是否被本地安全軟件攔截。
  • 確保有管理員/Root 權限:Windows 右鍵“以管理員身份運行”,Linux/macOS 使用 sudo
  • 提前下載好 JDK:Android Studio 默認捆綁了 OpenJDK,但有時建議單獨安裝最新版 JDK 并配置 JAVA_HOME

Windows 下的解決方案

作者?? 貓頭虎微信號:Libin9iOak 公眾號:貓頭虎技術團隊 萬粉變現經紀人:CSDNWF

1. 檢查網絡與代理

  1. 打開 Android Studio,依次點擊 File > Settings > Appearance & Behavior > System Settings > HTTP Proxy

  2. 根據你的網絡環境,選擇:

    • No proxy(無代理)
    • Auto-detect proxy settings(自動檢測)
    • Manual proxy configuration(手動配置),填寫代理服務器地址和端口。
  3. 點擊 Check connection,測試 https://dl.google.com 是否可達。

2. 配置 Android Studio 鏡像源

  1. 打開 File > Settings > Appearance & Behavior > System Settings > Android SDK,點擊 SDK Update Sites 標簽。

  2. 在列表中選擇 GoogleAndroid Repository,將默認 URL 替換為國內鏡像,例如:

    • 清華鏡像:

      https://mirrors.tuna.tsinghua.edu.cn/google/android/
      https://mirrors.tuna.tsinghua.edu.cn/apache/<component>/
      
    • 阿里云鏡像:

      https://developer.aliyun.com/mirror/google
      
  3. 點擊 ApplyOK,再次嘗試 SDK Manager

3. 手動下載并導入 SDK

  1. 訪問國內鏡像站,手動下載對應版本的 sdk-tools-windows.zip
  2. 解壓到自定義目錄,例如 D:\Android\android-sdk
  3. 在 Android Studio 中打開 File > Settings > Appearance & Behavior > System Settings > Android SDK,點擊右上角的 Edit(齒輪圖標),選擇 Add Local 指定到你解壓的目錄。
  4. 手動勾選需要的 SDK Platform、SDK Tools,點擊 Apply

Linux 下的解決方案

作者?? 貓頭虎微信號:Libin9iOak 公眾號:貓頭虎技術團隊 萬粉變現經紀人:CSDNWF

1. 環境變量與代理設置

# 設置 JAVA_HOME
echo 'export JAVA_HOME=/usr/lib/jvm/java-11-openjdk' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc# 若需代理
export http_proxy=http://<proxy_host>:<proxy_port>
export https_proxy=http://<proxy_host>:<proxy_port>

2. 使用命令行工具安裝 SDK

  1. 下載命令行 SDK:

    wget https://dl.google.com/android/repository/commandlinetools-linux-XXXX_latest.zip -O cmdline-tools.zip
    unzip cmdline-tools.zip -d $HOME/Android/Sdk/cmdline-tools
    mv $HOME/Android/Sdk/cmdline-tools/cmdline-tools $HOME/Android/Sdk/cmdline-tools/tools
    
  2. 配置環境變量:

    echo 'export ANDROID_SDK_ROOT=$HOME/Android/Sdk' >> ~/.bashrc
    echo 'export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/tools/bin' >> ~/.bashrc
    source ~/.bashrc
    
  3. 安裝 SDK:

    sdkmanager --update
    sdkmanager "platform-tools" "platforms;android-30"
    

3. 更換鏡像源

編輯 ~/.android/repositories.cfg(若不存在則創建),添加:

### User Sources for Android SDK Manager
count=1
src id:google;https://mirrors.tuna.tsinghua.edu.cn/google/android

然后執行 sdkmanager --update


macOS 下的解決方案

作者?? 貓頭虎微信號:Libin9iOak 公眾號:貓頭虎技術團隊 萬粉變現經紀人:CSDNWF

1. Homebrew 安裝及更新

# 安裝或更新 Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew update# 安裝 Android SDK 命令行工具
brew install --cask android-sdk

2. 配置代理與鏡像

# 代理設置(視網絡環境而定)
export http_proxy=http://<proxy_host>:<proxy_port>
export https_proxy=http://<proxy_host>:<proxy_port># 在 ~/.android/repositories.cfg 添加鏡像
mkdir -p ~/.android && touch ~/.android/repositories.cfg
cat <<EOF > ~/.android/repositories.cfg
count=1
src id:google;https://mirrors.tuna.tsinghua.edu.cn/google/android
EOF

3. 手動導入 SDK 到 Android Studio

  1. 打開 Android Studio,進入 Preferences > Appearance & Behavior > System Settings > Android SDK
  2. 點擊右側 Edit(齒輪)選擇 Add Local,定位到 /usr/local/share/android-sdk(或你自定義的路徑)。
  3. 勾選需要的組件,Apply。

常見問題與答疑

作者?? 貓頭虎微信號:Libin9iOak 公眾號:貓頭虎技術團隊 萬粉變現經紀人:CSDNWF

  1. 提示 SSLHandshakeException

    • 檢查系統時間,確保與網絡時間同步;
    • 更換鏡像源;
    • 臨時關閉 HTTPS 檢查(不推薦,測試用)。
  2. 權限不足無法寫入 SDK 目錄

    • Windows:以管理員身份運行;
    • macOS/Linux:sudo chown -R $(whoami) /path/to/android-sdk
  3. 下載中斷或超時

    • 多線程下載工具(如 aria2)+ 手動導入;
    • 調整 Android Studio 的下載并發數(Settings > Appearance & Behavior > System Settings > HTTP Connection > Maximum connections)。

總結

通過網絡代理、鏡像源替換、手動導入、命令行安裝等多種方法,基本覆蓋了 Windows、Linux、macOS 三大平臺下因網絡、防火墻、權限等原因導致無法下載 SDK 的所有常見場景。初學者可以根據自身環境,逐步排查、對癥下藥。

作者??
貓頭虎微信號:Libin9iOak
公眾號:貓頭虎技術團隊
萬粉變現經紀人:CSDNWF

希望本教程能夠幫助你順利解決 Android Studio 安裝 SDK 的問題,開啟愉快的 Android 開發之旅!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/89897.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/89897.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/89897.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SQL Server從入門到項目實踐(超值版)讀書筆記 21

9.5 數據的內連接查詢連接是關系數據庫模型的主要特點&#xff0c;連接查詢是關系數據庫中最主要的查詢&#xff0c;主要包括內連接、外連接等。內連接查詢操作列出與連接條件匹配的數據行&#xff0c;它使用比較運算符比較被鏈接列的列值。具體語法格式如下&#xff1a;SELECT…

瑞芯微7月17日舉辦開發者大會,多款AIoT新品發布,觸覺智能RK方案商報導

瑞芯微第九屆開發者大會RKDC 2025將有多款新品發布。 據瑞芯微電子Rockchip此前宣布&#xff1a;該企業的本年度開發者大會RKDC 2025將于7月17~18日在福建福州海峽國際會展中心舉行。本次瑞芯微開發者大會以“AIoT模型創新重做產品”為主題&#xff0c;關注傳統IoT功能設備向場…

Eureka+Ribbon實現服務注冊與發現

目錄 一、相關文章 二、兼容說明 三、服務注冊 四、服務發現 一、相關文章 基礎工程&#xff1a;gradle7.6.1springboot3.2.4創建微服務工程-CSDN博客 Eureka服務端啟動&#xff1a;https://blog.csdn.net/cherishSpring/article/details/149473554 Ribbon負載均衡&#…

數據庫、HTML

一、數據庫 數據庫文件與普通文件區別: 普通文件對數據管理(增刪改查)效率低2.數據庫對數據管理效率高&#xff0c;使用方便 常用數據庫: 1.關系型數據庫: 將復雜的數據結構簡化為二維表格形式 大型:0racle、DB2 中型:MySq1、sQLServer 小型:Sqlite 2.非關系型數據庫以鍵值對…

RCE隨筆(1)

哪些是可以執行代碼執行&#xff1a;php代碼。eval如&#xff1a;eval:<?php eval($_post[key]);eval&#xff1a;php中不被叫做函數叫動態執行命令assert&#xff1a;執行函數call_user_func_array<?php call_user_func_array(assert,array($_REQUEST[shu]));傳入xxs-…

FPGA——ZYNQ7020學習日記(PS端)4(開始PS控制VGA顯示)

1.DMA 我們的整體VGA顯示分為幾步&#xff1a;比如先導入VIDEO TIMING CONTROL來做對輸入數據的時序“對齊”&#xff0c;這里開源騷客寫的很詳細&#xff0c;先用了一個虛擬IO&#xff08;VIO)來作為輸入&#xff0c;導入了一個簡單的RTL模塊&#xff08;當VTL的使能信號有效…

AGX Xavier 搭建360環視教程【補充一:魚眼去畸變(Fisheye Undistortion)】

對每路幀做魚眼去畸變除了用cv::cuda::remap是否有更好的辦法呢&#xff1f;確實 cv::cuda::remap 不是唯一可選項&#xff0c;甚至未必是最高效或最適合實際業務量級的方案。&#x1f3af; 1?? 去畸變的原理魚眼相機&#xff08;或者大廣角相機&#xff09;會把直線拉彎&…

tomato靶機練習

下載完靶機后&#xff0c;直接運行&#xff0c;選擇安裝路徑后將虛擬機的網絡設置為nat模式&#xff0c;設置完成后重啟虛擬機掃描同一網段&#xff0c;查找主機&#xff0c;這里我們使用kali的nmap&#xff0c;既能找到主機&#xff0c;也能查看開啟的端口依次嘗試&#xff0c…

136. Java 泛型 - 下限通配符

文章目錄136. Java 泛型 - 下限通配符 (? super T)**1. 什么是下限通配符 (? super T)&#xff1f;****2. 為什么使用下限通配符&#xff1f;****3. 示例&#xff1a;使用 ? super Integer 允許添加 Integer****? 正確示例****4. 為什么 List<? super Integer> 和 L…

C++23中的std::expected:異常處理

C23中的std::expected:異常處理 眾所周知&#xff0c;C23以前的異常處理是比較麻煩的&#xff0c;尤其是自己要在可能拋出異常的地方&#xff0c;需要自己去捕獲它&#xff0c;比如除數為0的異常、使用std::stoi函數將字符串轉換成int整型數據、處理文件讀寫的異常等等&#x…

處理Electron Builder 創建新進程錯誤 spawn ENOMEM

這個錯誤 spawn ENOMEM 表明系統內存不足&#xff0c;無法為 Electron Builder 創建新進程。以下是一些可能的解決方案&#xff1a;釋放系統內存關閉不必要的程序和服務增加物理內存 (RAM) 或交換空間 (swap)使用 free -h 和 top 命令檢查內存使用情況臨時增加交換空間# 創建一…

discuz安裝使用教程,及網站部署在公網訪問

Discuz!的安裝主要包括環境準備、程序部署和配置管理三個核心步驟?&#xff0c;有條件 的可以使用寶塔面板或云鏡像簡化流程&#xff0c;本地部署無公網IP的配合類似nat123映射公網訪問&#xff0c;當前最新版本為Discuz! Q&#xff08;2025年發布&#xff09;和Discuz! X3.5&…

深入解析C#數字轉換:隱式與顯式轉換的全面指南

—— 數據精度保衛戰中的checked與unchecked秘籍 &#x1f4cc; 核心概念速覽 1. 隱式轉換 自動發生&#xff0c;無數據丟失風險&#xff08;如 int→long&#xff09;遵循"小類型→大類型"路徑&#xff08;見下圖??&#xff09; [圖1&#xff1a;C#隱式數字轉換路…

量子計算可以解決的三個現實問題

今年是量子力學被發現一百周年。這一突破幫助人們認識到&#xff0c;支配我們周圍世界最小層面&#xff08;分子、原子和亞原子粒子&#xff09;的物理定律&#xff0c;與支配我們在日常生活中與物體相互作用方式的物理定律有著根本的不同。量子力學讓我們能夠了解從血液中的新…

Valgrind Memcheck 全解析教程:6個程序說明基礎內存錯誤

Valgrind 是一個強大的動態分析框架&#xff0c;其中的 memcheck 工具用于檢測 C/C 程序中類型不定的內存錯誤&#xff0c;是基礎級內存調試工具的重要選擇。 本文將通過 6 段有意義的錯誤代碼&#xff0c;全面講解 memcheck 的檢測原理和輸出分析&#xff0c;進而幫助學習者托…

Vue3 實現 Excel 文件導入導出功能

在Vue 3中實現Excel文件的導入和導出功能&#xff0c;你可以使用一些流行的JavaScript庫&#xff0c;如SheetJS&#xff08;也稱為xlsx&#xff09;來處理Excel文件。以下是實現這一功能的基本步驟&#xff1a;1. 安裝SheetJS首先&#xff0c;你需要安裝xlsx庫。在你的Vue項目中…

CS231n-2017 Lecture2圖像分類筆記

圖像分類問題定義&#xff1a;在已有固定的分類標簽集合的前提下&#xff0c;能夠對輸入的圖像進行識別處理&#xff0c;從集合中找到該圖像所對應的標簽。對于計算機而言&#xff0c;圖像并非直觀的圖像&#xff0c;而是一個的像素集合&#xff0c;對于每個像素&#xff0c;其…

Typecho博客Ajax評論功能實現全攻略

文章目錄 Typecho實現Ajax評論功能的完整指南 引言 一、技術選型與準備工作 1.1 技術棧分析 1.2 環境準備 二、前端實現方案 2.1 基礎HTML結構 2.2 JavaScript處理邏輯 三、后端處理實現 3.1 創建插件處理Ajax請求 3.2 錯誤處理增強 四、安全性考慮 4.1 CSRF防護 4.2 輸入過濾 …

【計算機考研(408)- 數據結構】樹與二叉樹

樹與二叉樹 樹的定義及相關概念 樹是n&#xff08;n≥0&#xff09;個結點的有限集合&#xff0c;n 0時&#xff0c;稱為空樹&#xff0c;這是一種特殊情況。在任意一棵非空樹中應滿足&#xff1a; 1&#xff09;有且僅有一個特定的稱為根的結點。 2&#xff09;當n > 1時…

MacOS:如何利用終端來操作用戶

MacOS&#xff1a;如何利用終端來操作用戶MacOS&#xff1a;如何利用終端來操作用戶1. 創建用戶并賦予管理員權限步驟&#xff1a;2. 取消用戶的管理員權限解釋&#xff1a;3. 查看組成員查看 admin 組成員&#xff1a;查看 users 組成員&#xff1a;4. 其他常見的用戶管理命令…