คำถามติดแท็ก android-gradle-plugin

ปลั๊กอิน Android Gradle เป็นระบบสร้างมาตรฐานของ Android มันถูกใช้เป็นระบบสร้างการสำรองข้อมูลโดย Android Studio

22
Gradle ใน Android Studio คืออะไร
Gradle ค่อนข้างสับสนกับฉันและสำหรับนักพัฒนา Android รายใหม่ ทุกคนสามารถอธิบายว่า Gradle ใน Android Studio คืออะไรและจุดประสงค์ของมันคืออะไร เหตุใดจึงรวมอยู่ใน Android Studio

30
Android Studio: เพิ่ม jar เป็นไลบรารีหรือไม่
ฉันพยายามใช้ Android Studio ใหม่ แต่ดูเหมือนว่าฉันจะทำงานไม่ถูกต้อง ฉันใช้ไลบรารีGsonเพื่อทำให้เป็นอนุกรม / deserialize JSON-objects แต่ห้องสมุดก็ไม่ได้รวมอยู่ในโครงสร้าง ผมได้สร้างโครงการใหม่มีเพียงMainActivity คัดลอกgson-2.2.3.jarในโฟลเดอร์ / libs และเพิ่มเป็นการพึ่งพาไลบรารี (คลิกขวา -> เพิ่มเป็นไลบรารี) ซึ่งรวมถึง jar ใน android studio ดังนั้นจึงสามารถอ้างอิงได้จากไฟล์ต้นฉบับ เมื่อฉันพยายามเรียกใช้โครงการมันไม่สามารถคอมไพล์ได้ดังนั้นฉันจึงเพิ่ม: compile files('libs/gson-2.2.3.jar') เพื่อการอ้างอิงในไฟล์ de .gradle หลังจากนั้นมันก็คอมไพล์อย่างถูกต้อง แต่เมื่อรันแอพพลิเคชั่ClassDefNotFoundExceptionน ไม่มีใครรู้ว่าฉันทำอะไรผิดหรือเปล่า?

26
เป็นไปได้ไหมที่จะใช้ Java 8 สำหรับการพัฒนา Android?
การค้นหาเว็บจะไม่ชัดเจนถ้ารองรับ Java 8 สำหรับการพัฒนา Android หรือไม่ ก่อนที่ฉันจะดาวน์โหลด / ติดตั้ง Java 8 ฉันสามารถชี้ไปที่เอกสาร "ทางการ" ใด ๆ ที่ระบุว่า Java 8 เป็นหรือไม่รองรับการพัฒนา Android

11
compileSdkVersion และ targetSdkVersion แตกต่างกันอย่างไร?
ฉันได้ดูเอกสารประกอบการสร้างด้วย Gradle แล้ว แต่ฉันก็ยังไม่แน่ใจว่าความแตกต่างระหว่างcompileSdkVersionและtargetSdkVersionคืออะไร ทั้งหมดที่กล่าวมาคือ: compileSdkVersionคุณสมบัติระบุเป้าหมายการรวบรวม "เป้าหมายการรวบรวม" คืออะไร? ฉันเห็นสองวิธีที่เป็นไปได้ในการตีความสิ่งนี้: compileSdkVersionเป็นรุ่นของคอมไพเลอร์ที่ใช้ในการสร้างแอปในขณะที่targetSdkVersionเป็น"ระดับ API ว่าเป้าหมายการประยุกต์ใช้" (ถ้าเป็นกรณีนี้ฉันจะถือว่าcompileSdkVersionต้องมากกว่าหรือเท่ากับtargetSdkVersion? พวกเขาหมายถึงสิ่งเดียวกัน "compilation target" == "ระดับ API ที่แอปพลิเคชันกำหนดเป้าหมาย" อื่น ๆ อีก? ฉันเห็นว่าคำถามนี้ได้ถูกถามมาก่อน แต่คำตอบเดียวที่เสนอราคา doc ซึ่งเป็นสิ่งที่ไม่ชัดเจนสำหรับฉัน

30
วิธีสร้างไฟล์ apk ที่ลงนามแล้วโดยใช้ Gradle
ฉันต้องการให้ Gradle build ของฉันสร้างไฟล์ apk ที่ลงชื่อแล้วโดยใช้ Gradle ฉันไม่แน่ใจว่ารหัสถูกต้องหรือไม่หากฉันทำพารามิเตอร์หายไปgradle build? นี่คือรหัสบางส่วนในไฟล์ gradle ของฉัน: android { ... signingConfigs { release { storeFile file("release.keystore") storePassword "******" keyAlias "******" keyPassword "******" } } } โครงสร้างการไล่ระดับสีเสร็จสิ้นความสำเร็จและในbuild/apkโฟลเดอร์ของฉันฉันเห็น...-release-unsigned.apkและ...-debug-unaligned.apkไฟล์เท่านั้น ข้อเสนอแนะเกี่ยวกับวิธีการแก้ปัญหานี้?

5
ไม่พบวิธีการ Gradle DSL: 'runProguard'
ฉันได้รับข้อผิดพลาดหลังจากอัพเดตจากโปรเจ็กต์สุดท้ายของฉัน ไม่ใช่ปัญหาในรหัสของฉัน แต่ฉันมีปัญหากับ build.gradle ฉันจะแก้ไขได้อย่างไร รหัส build.gradle ที่นี่: apply plugin: 'android' android { compileSdkVersion 21 buildToolsVersion '20.0.0' packagingOptions { exclude 'META-INF/DEPENDENCIES' exclude 'META-INF/LICENSE' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/license.txt' exclude 'META-INF/NOTICE' exclude 'META-INF/NOTICE.txt' exclude 'META-INF/notice.txt' exclude 'META-INF/ASL2.0' } defaultConfig { applicationId 'com.xxx.axxx' minSdkVersion 14 targetSdkVersion 19 versionCode 6 versionName '1.0' } buildTypes …

30
ยอมรับใบอนุญาต SDK ทั้งหมดโดยอัตโนมัติ
ตั้งแต่ปลั๊กอิน android gradle 2.2-alpha4 : Gradle จะพยายามดาวน์โหลดแพ็คเกจ SDK ที่หายไปซึ่งขึ้นอยู่กับโครงการ ซึ่งเป็นที่น่าอัศจรรย์ใจเย็นและได้รับรู้เพื่อจะเป็นโครงการ JakeWharton แต่ในการดาวน์โหลดไลบรารี SDK คุณต้อง: ยอมรับข้อตกลงสิทธิ์ใช้งานหรือ gradle บอกคุณ: คุณยังไม่ได้ยอมรับข้อตกลงสิทธิ์การใช้งานของส่วนประกอบ SDK ต่อไปนี้: [Android SDK Build-Tools 24, แพลตฟอร์ม Android SDK 24] ก่อนที่จะสร้างโครงการของคุณคุณต้องยอมรับข้อตกลงสิทธิ์การใช้งานและทำการติดตั้งส่วนประกอบที่ขาดหายไปโดยใช้ Android Studio SDK Manager หรือหากต้องการเรียนรู้วิธีโอนข้อตกลงสิทธิ์การใช้งานจากเวิร์กสเตชันเครื่องหนึ่งไปยังอีกเครื่องหนึ่งให้ไปที่ http://d.android.com/r/studio-ui/export-licenses.html และปัญหานี้เป็นปัญหาเพราะผมชอบที่จะติดตั้งการอ้างอิง SDK gradle buildทั้งหมดในขณะที่ทำที่ ฉันกำลังมองหาวิธีการที่จะยอมรับใบอนุญาตอัตโนมัติทั้งหมด อาจเป็นสคริปต์การไล่ระดับสี คุณมีความคิดใด ๆ ขอบคุณ! [แก้ไข] ทางออกคือการดำเนินการ: android update sdk --no-ui …

4
สนับสนุนการเรียกใช้ศุลกากรเท่านั้นที่เริ่มต้นด้วย android 0 --min-api 26 [ปิด]
ปิด. คำถามนี้ต้องการรายละเอียดการแก้จุดบกพร่อง ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดเมื่อปีที่แล้ว ก่อนหน้านี้ฉันใช้ build รุ่น gradle 26 แต่หลังจากเปลี่ยน buildtoolsversion เป็น 27 เช่น ข้อผิดพลาดของภาพนี้ : error build gradle screenshot

9
เป็นไปได้ไหมที่จะประกาศตัวแปรใน Gradle ที่ใช้งานได้ใน Java?
เป็นไปได้ไหมที่จะประกาศตัวแปรใน Gradle ที่ใช้งานได้ใน Java? โดยทั่วไปฉันต้องการประกาศ vars บางอย่างใน build.gradle และจากนั้นรับมัน (ชัด) ในเวลาที่สร้าง เช่นเดียวกับมาโครตัวประมวลผลล่วงหน้าใน C / C ++ ... ตัวอย่างของการประกาศจะเป็นอย่างนั้น ... : android { debug { A_VAR_RETRIEVABLE_IN_JAVA = 42 } release { A_VAR_RETRIEVABLE_IN_JAVA = 42+52 } } มีวิธีทำอะไรแบบนั้นเหรอ?

20
วิธีรวมแพ็คเกจ aar ภายนอกด้วยตนเองโดยใช้ Gradle Android Build System ใหม่
ฉันกำลังทดลองกับระบบ android build ใหม่และฉันพบปัญหาเล็กน้อย ฉันได้รวบรวมแพคเกจ aar ของฉันเองของ ActionBarSherlock ซึ่งฉันเรียกว่า 'actionbarsherlock.aar' สิ่งที่ฉันพยายามทำคือใช้ aar นี้เพื่อสร้าง APK สุดท้ายของฉัน ถ้าฉันรวมทั้งไลบรารี ActionBarSherlock ทั้งหมดเป็นโมดูล android-library ในโครงการหลักของฉันโดยใช้โครงการคอมไพล์ (': actionbarsherlock') ฉันสามารถสร้างได้สำเร็จโดยไม่มีปัญหาใด ๆ แต่ปัญหาของฉันคือฉันต้องการให้การอ้างอิงเป็นแพคเกจไฟล์ aar ด้วยตนเองถ้าฉันเป็น JAR ฉันก็ดูเหมือนจะไม่สามารถหาวิธีที่จะรวมไว้ในโครงการของฉันได้อย่างถูกต้อง ฉันพยายามใช้การกำหนดค่าการคอมไพล์แล้ว แต่ดูเหมือนจะไม่ทำงาน ฉันยังคงหาสัญลักษณ์ไม่พบในระหว่างการคอมไพล์ซึ่งบอกฉันว่า classes.jar จากแพ็คเกจ aar ไม่ได้ถูกรวมอยู่ใน classpath ไม่มีใครรู้ว่าไวยากรณ์เพื่อรวม aar แพ็คเกจเป็นไฟล์ด้วยตนเองหรือไม่? build.gradle buildscript { repositories { mavenCentral() } dependencies { classpath …

23
HttpClient จะไม่นำเข้าใน Android Studio
ฉันมีคลาสง่ายๆที่เขียนใน Android Studio: package com.mysite.myapp; import org.apache.http.client.HttpClient; public class Whatever { public void headBangingAgainstTheWallExample () { HttpClient client = new DefaultHttpClient(); } } และจากนี้ฉันได้รับข้อผิดพลาดเวลารวบรวมต่อไปนี้: Cannot resolve symbol HttpClient ไม่HttpClientรวมอยู่ใน Android Studio SDK? แม้ว่าจะไม่ใช่ฉันก็เพิ่มมันลงใน Gradle build ของฉันเช่นนี้: dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.0' compile 'org.apache.httpcomponents:httpclient:4.5' } มีหรือไม่มีบรรทัดรวบรวมล่าสุดข้อผิดพลาดจะเหมือนกัน ฉันกำลังคิดถึงอะไร

21
API 'variant.getExternalNativeBuildTasks ()' ล้าสมัยและถูกแทนที่ด้วย 'variant.getExternalNativeBuildProviders ()
สตูดิโอที่ใช้ Android 3.3 เกาะคานารี 11 3.3.0-alpha11กับรุ่นปลั๊กอิน มันจะพ่นข้อผิดพลาดต่อไปนี้เมื่อพยายามซิงค์ gradle WARNING: API 'variant.getExternalNativeBuildTasks()' is obsolete and has been replaced with 'variant.getExternalNativeBuildProviders()'. It will be removed at the end of 2019. For more information, see https://d.android.com/r/tools/task-configuration- avoidance Affected Modules: app การคลิกที่ข้อผิดพลาดทำให้ฉันไปที่บรรทัดนี้ในไฟล์ gradle applicationVariants.all { variant -> variant.outputs.all { outputFileName = "${variant.name}-${variant.versionName}.apk" } } …

20
ปลั๊กอิน Android Gradle 0.7.0:“ ไฟล์ที่ซ้ำกันระหว่างการบรรจุ APK”
ใช้ Android Gradle plugin 0.7.0 ดังต่อไปนี้build.gradle: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.7.0' } } apply plugin: 'android' repositories { maven { url "https://android-rome-feed-reader.googlecode.com/svn/maven2/releases" } maven { url "http://dl.bintray.com/populov/maven" } mavenCentral() } android { compileSdkVersion 19 buildToolsVersion '18.1.1' defaultConfig { minSdkVersion 9 targetSdkVersion 19 } buildTypes { …

12
การกำหนดค่าตามความต้องการไม่รองรับปลั๊กอิน Android Gradle เวอร์ชันปัจจุบัน
หลังจากอัปเกรดเป็น Android Studio 3.1.2 ฉันได้รับข้อผิดพลาดต่อไปนี้: การกำหนดค่าตามความต้องการไม่รองรับปลั๊กอิน Android Gradle รุ่นปัจจุบันเนื่องจากคุณใช้ Gradle เวอร์ชัน 4.6 หรือสูงกว่า คำแนะนำ: ปิดใช้งานการกำหนดค่าตามความต้องการโดยการตั้งค่า org.gradle.configureondemand = false ในไฟล์ gradle.properties ของคุณหรือใช้ Gradle เวอร์ชันน้อยกว่า 4.6 ฉันพยายามทำตามคำแนะนำ แต่ไม่สามารถแก้ไขปัญหาได้ ความคิดใด ๆ ความช่วยเหลือทั้งหมดได้รับการชื่นชมอย่างมากขอบคุณ

21
ข้อผิดพลาด: (1, 0) ไม่พบปลั๊กอินที่มี id 'com.android.application'
นี่เป็นความพยายามครั้งแรกของฉันที่ Android Studio ฉันติดตั้ง 0.8.0 และอัปเดตเป็น 0.8.2 ทันทีที่มีการสร้างโครงการฉันได้รับข้อความแสดงข้อผิดพลาด: ข้อผิดพลาด: (1, 0) ไม่พบปลั๊กอินที่มี id 'com.android.application' C: \ Users \ บ๊อบ \ AndroidStudioProjects \ HelloAgain6 \ แอป \ build.gradle apply plugin: 'com.android.application' android { compileSdkVersion 20 buildToolsVersion "20.0.0" defaultConfig { applicationId "com.example.bob.helloagain6" minSdkVersion 15 targetSdkVersion 20 versionCode 1 versionName "1.0" } buildTypes …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.