Android?Studio?2022.1.1創(chuàng)建項目的Gradle配置問題
今天使用Android Studio建了一個新項目,遇到了不少問題,網上也找了不少解決方案都無效(可能Studio版本、項目版本等都不一樣,解決辦法也不一樣吧),最后問題解決,總結梳理以下幾點:
1.版本確認
Android Studio版本:2022.1.1
Gradle版本:7.5
Android Gradle Plugin Version:7.4.2
JDK版本:Java 11
SDK版本:33(Android 13.0)


2.遇到的問題
could not resolve plugin artifact 'com.android.application:com.android.application.gradle.plugin:7.4.2'
該問題出現,直接導致項目無法完成編譯,看似是gradle插件版本過高問題,導致adnroid核心包無法下載下來,實際上歸根結底還是“網絡的問題”。
3.解決辦法
1)檢查各版本配置是否正確
Gradle插件和Gradle工具的版本對應是有要求的,詳見下圖:

另外可在Adroid官網查看對應關系:Android Gradle 插件版本說明 | Android 開發(fā)者 | Android Developers
根據上圖可以看出,本次使用的Android Gradle Plugin Version版本是7.4.x,因此對應的Gradle版本是7.5版本(別搞錯了,版本不對應一樣可能無法完成更新下載)。
另外JDK版本也不宜太高,最初我使用的JDK17,結果發(fā)現Android Studio2022.1.1最高支持JDK為Java 11,所以需要降級到Java 11。

該配置可在File —> Project Structure —> Modules中查看確認。
2)網絡配置
使用代理或梯子是完成不了更新的,所以強烈建議將倉庫地支更換為國內源,比如阿里源。
完整的setting.gradle配置:
pluginManagement {
repositories {
maven { url "https://jitpack.io" }
maven { url 'https://maven.aliyun.com/repository/releases' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/central' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/public' }
gradlePluginPortal()
google()
mavenCentral()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
maven { url "https://jitpack.io" }
maven { url 'https://maven.aliyun.com/repository/releases' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/central' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
maven { url 'https://maven.aliyun.com/repository/public' }
google()
mavenCentral()
}
}
rootProject.name = "XXX"
include ':app'注:Gradle7.5的Maven倉庫配置已經從build.gradle文件轉移到setting.gradle文件里了,因此該配置要寫在setting.gradle文件里
3)關閉Android Studio代理
這一步很關鍵,我就是忘記關閉,折騰了半天才發(fā)現問題。
打開File —> Setting —> 搜索proxy —> 選擇Http Proxy,選擇No proxy并確認

4)配置本地Gradle
Android Studio內置了Gradle,但是他在項目編譯時才下載Gradle工具,but 不要抱有期望了,下不下來的,還是自己手動下載Gradle工具吧(注意下載對應版本,我這里的對應版本是7.5,若不清楚對應版本,可以看看前面的內容,查看自己需要的版本)。
Gradle版本下載:Gradle Distributions
下載完成后需要配置幾個地方:
打開File —> Setting —> Build,Execution…… —> Build Tools —> Gradle。
a.設置Gradle user home為你安裝的gradle目錄;
b.設置下方User Gradle from為Specified location,并選擇你的gradle目錄;
c.選擇Gradle JDK版本為Java 11

這樣就完全使用本地gradle進行編譯了。若使用默認的Gradle user home,則需要修改C:\Users\用戶名\.gradle\目錄下的gradle.properties文件,注釋掉以下代理內容(使用內置Gradle不禁用這里代理仍然會被使用,從而可能導致下載失?。?/p>
## For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
#
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx1024m -XX:MaxPermSize=256m
# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
#
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
#Fri Apr 07 16:23:59 CST 2023
# systemProp.http.proxyHost=mirrors.neusoft.edu.cn
# systemProp.https.proxyHost=mirrors.neusoft.edu.cn
# systemProp.https.proxyPort=80
# systemProp.http.proxyPort=80
經過以上步驟,項目重新編譯應該就可以正常下載更新了。
題外話:若不使用本地Gradle工具,還可能會產生Error:Unable to tunnel through proxy. Proxy returns "HTTP/1.1 400 Bad Request"問題喲。
4.其他配置
1)修改Android Studio運行環(huán)境內存
打開File —> Setting —> Appearance & Behavior —> System Settings —> Memory Settings,更改內存為4096MB(根據自己實際情況更改)

2) 修改字符集編碼
打開File —> Setting —> 搜索coding —> Editor —> File Encodings,設置Global Encoding、Project Encoding和Default encoding for properties files為UTF-8,在上方“+”選擇項目根路徑,表示整個項目使用UTF-8編碼。

以上就是整個基礎框架搭建的內容,希望對你有幫助,祝編碼愉快!
到此這篇關于Android Studio 2022.1.1創(chuàng)建項目的Gradle配置的文章就介紹到這了,更多相關Android Studio Gradle配置內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Android開發(fā)仿bilibili刷新按鈕的實現代碼
這篇文章主要介紹了Android 仿bilibili刷新按鈕的實現代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-10-10
關于Android CountDownTimer的使用及注意事項
這篇文章主要介紹了關于Android CountDownTimer的使用及注意事項,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11
Flutter加載圖片流程之ImageProvider源碼示例解析
這篇文章主要為大家介紹了Flutter加載圖片流程之ImageProvider源碼示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-04-04
android中Intent傳值與Bundle傳值的區(qū)別詳解
本篇文章是對android中Intent傳值與Bundle傳值的區(qū)別進行了詳細的分析介紹,需要的朋友參考下2013-05-05
Android 模擬器(JAVA)與C++ socket 通訊 分享
Android 模擬器(JAVA)與C++ socket 通訊 分享,需要的朋友可以參考一下2013-05-05

