ฉันจะเพิ่มโครงการห้องสมุด (เช่น Sherlock ABS) ลงในAndroid Studio ได้อย่างไร
(ไม่ใช่สำหรับบันเดิลที่ใช้ ADT Eclipse แต่เป็นสำหรับAndroid Studioใหม่)
Gradle
, เห็นนี้คำตอบ StackOverflow
ฉันจะเพิ่มโครงการห้องสมุด (เช่น Sherlock ABS) ลงในAndroid Studio ได้อย่างไร
(ไม่ใช่สำหรับบันเดิลที่ใช้ ADT Eclipse แต่เป็นสำหรับAndroid Studioใหม่)
Gradle
, เห็นนี้คำตอบ StackOverflow
คำตอบ:
อัพเดทสำหรับ Android Studio 1.0
ตั้งแต่ Android Studio 1.0 เปิดตัว (และเวอร์ชั่นต่าง ๆ มากมายระหว่าง v1.0 และหนึ่งในตัวแรกจากคำตอบก่อนหน้านี้ของฉัน) บางสิ่งมีการเปลี่ยนแปลง
คำอธิบายของฉันมุ่งเน้นไปที่การเพิ่มโครงการห้องสมุดภายนอกด้วยมือผ่านไฟล์ Gradle (เพื่อทำความเข้าใจกระบวนการ) หากคุณต้องการเพิ่มห้องสมุดผ่านทางผู้สร้าง Android Studio เพียงตรวจสอบคำตอบด้านล่างด้วยคู่มือภาพ (มีความแตกต่างบางอย่างระหว่าง Android Studio 1.0 และจากหน้าจอ แต่กระบวนการนั้นคล้ายกันมาก)
ก่อนที่คุณจะเริ่มเพิ่มไลบรารีในโครงการของคุณด้วยตนเองให้พิจารณาเพิ่มการพึ่งพาภายนอก มันจะไม่ยุ่งในโครงสร้างโครงการของคุณ เกือบทุกไลบรารี่ Android ที่เป็นที่รู้จักนั้นมีอยู่ในMaven repository และการติดตั้งนั้นใช้โค้ดเพียงบรรทัดเดียวในapp/build.gradle
ไฟล์:
dependencies {
compile 'com.jakewharton:butterknife:6.0.0'
}
การเพิ่มห้องสมุด
นี่คือกระบวนการทั้งหมดในการเพิ่มห้องสมุด Android ภายนอกให้กับโครงการของเรา:
HelloWorld/ app/ - build.gradle // local Gradle configuration (for app only) ... - build.gradle // Global Gradle configuration (for whole project) - settings.gradle - gradle.properties ...
HelloWorld/
) สร้างโฟลเดอร์ใหม่: /libs
ซึ่งเราจะวางไลบรารี่ภายนอกของเรา (ไม่จำเป็นต้องใช้ขั้นตอนนี้ - เพียงเพื่อรักษาโครงสร้างโครงการที่สะอาดขึ้น)/libs
โฟลเดอร์ที่สร้างขึ้นใหม่ ในตัวอย่างนี้ฉันใช้ไลบรารี PagerSlidingTabStrip (เพียงดาวน์โหลด ZIP จาก GitHub เปลี่ยนชื่อไดเรกทอรีห้องสมุดเป็น„ PagerSlidingTabStrip "และคัดลอก) นี่คือโครงสร้างใหม่ของโครงการของเรา:HelloWorld/ app/ - build.gradle // Local Gradle configuration (for app only) ... libs/ PagerSlidingTabStrip/ - build.gradle // Local Gradle configuration (for library only) - build.gradle // Global Gradle configuration (for whole project) - settings.gradle - gradle.properties ...
แก้ไขโดยการเพิ่ม settings.gradle include
ห้องสมุดของคุณจะ หากคุณใช้เส้นทางที่กำหนดเองเหมือนที่ฉันทำคุณต้องกำหนดไดเรกทอรีโครงการสำหรับห้องสมุดของเราด้วย settings.gradle ทั้งหมดควรมีลักษณะดังนี้:
include ':app', ':PagerSlidingTabStrip'
project(':PagerSlidingTabStrip').projectDir = new File('libs/PagerSlidingTabStrip')
5.1 หากคุณพบข้อผิดพลาด "การกำหนดค่าเริ่มต้น" ให้ลองทำตามขั้นตอนที่ 5 แทน
include ':app'
include ':libs:PagerSlidingTabStrip'
ในการapp/build.gradle
เพิ่มโครงการห้องสมุดของเราเป็นการพึ่งพา:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile project(":PagerSlidingTabStrip")
}
6.1 หากคุณทำตามขั้นตอนที่ 5.1 ให้ทำตามนี้แทน 6
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile project(":libs:PagerSlidingTabStrip")
}
หากโครงการห้องสมุดของคุณไม่มีbuild.gradle
ไฟล์คุณต้องสร้างมันขึ้นมาเอง นี่คือตัวอย่างของไฟล์นั้น:
apply plugin: 'com.android.library'
dependencies {
compile 'com.android.support:support-v4:21.0.3'
}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 21
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
res.srcDirs = ['res']
}
}
}
นอกจากนี้คุณสามารถสร้างการกำหนดค่าส่วนกลางสำหรับโครงการของคุณซึ่งจะมีรุ่น SDK และรุ่นเครื่องมือสร้างสำหรับทุกโมดูลเพื่อให้สอดคล้อง เพียงแก้ไขgradle.properties
ไฟล์และเพิ่มบรรทัด:
ANDROID_BUILD_MIN_SDK_VERSION=14
ANDROID_BUILD_TARGET_SDK_VERSION=21
ANDROID_BUILD_TOOLS_VERSION=21.1.3
ANDROID_BUILD_SDK_VERSION=21
ตอนนี้คุณสามารถใช้มันในbuild.gradle
ไฟล์ของคุณ(ในแอพและโมดูลไลบรารี) ดังนี้:
//...
android {
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)
buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION
defaultConfig {
minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION)
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION)
}
}
//...
นั่นคือทั้งหมดที่ เพียงแค่คลิก, ประสานโครงการที่มีไอคอน ห้องสมุดของคุณควรมีอยู่ในโครงการของคุณ
Google I / O 2013 - ระบบสร้าง SDK Android ใหม่เป็นการนำเสนอที่ยอดเยี่ยมเกี่ยวกับการสร้างแอป Android ด้วยระบบ Gradle Build: ตามที่ Xavier Ducrohet กล่าวว่า:
Android Studio คือทั้งหมดที่เกี่ยวกับการแก้ไขการดีบักและการทำโปรไฟล์ มันไม่ได้เกี่ยวกับการสร้างอีกต่อไป
ในตอนแรกมันอาจสับสนเล็กน้อย (โดยเฉพาะผู้ที่ทำงานกับEclipseและไม่เคยเห็นมด - เหมือนฉัน;)) แต่สุดท้าย Gradle ให้โอกาสที่ดีและคุ้มค่าที่จะเรียนรู้ระบบการสร้างนี้
Global libraries
(# 10: "ตอนนี้ไปที่ห้องสมุดโลก") นอกเหนือจากนั้นมันทำงานตามที่อธิบายไว้ :) ขอบคุณมาก (ฉันหวังว่า Google จะสามารถใช้งานได้ - งานง่าย ๆ นี้ซับซ้อนอย่างน่ากลัวในตอนนี้)
นี่คือคู่มือภาพ:
อัปเดตสำหรับ Android Studio 0.8.2:
ในสตูดิโอของ Android 0.8.2 ให้ไปที่โครงสร้างโครงการ -> ภายใต้โมดูลเพียงแค่กดปุ่มบวกและเลือกนำเข้าโครงการที่มีอยู่actionbarsherlock
และนำเข้า จากนั้นซิงโครไนซ์ไฟล์ Gradle ของคุณ
หากคุณพบข้อผิดพลาด
ข้อผิดพลาด: การแก้ไขเครื่องมือสร้าง SDK (xx.xx) ต่ำเกินไป ต่ำสุดที่ต้องการคือ yy.yy
เพียงแค่เปิดbuild.gradle
ไฟล์ในactionbarsherlock
ไดเรกทอรีและอัปเดตเป็นbuildToolsVersion
ไฟล์ที่แนะนำ
android {
compileSdkVersion 19
buildToolsVersion 'yy.y.y'
ไฟล์เมนู-> โครงสร้างโครงการ ... :
โมดูล -> นำเข้าโมดูล
หลังจากอิมพอร์ตโมดูลไลบรารีให้เลือกโมดูลโครงการของคุณและเพิ่มการพึ่งพา:
จากนั้นเลือกโมดูลที่นำเข้า :
Select your project module and add dependency
dependencies { // ... compile project(':library') }
ใช้เมนูไฟล์ -> โครงสร้างโครงการ -> โมดูล
ฉันเริ่มใช้มันวันนี้ มันแตกต่างกันเล็กน้อย
สำหรับ Sherlock คุณอาจต้องการลบไดเรกทอรีทดสอบหรือเพิ่มjunit.jar
ไฟล์ไปที่ classpath
ในการนำเข้าไลบรารี่โดยใช้ gradle คุณสามารถเพิ่มมันเข้าไปในdependencies
ส่วนของ build.gradle
โมดูลของคุณ
เช่น
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.1.0'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
}
Android Studio กำลังเปลี่ยนแปลง
มีส่วนหนึ่งชื่อ "การตั้งค่าโมดูลเปิด" หากคุณคลิกขวาที่โฟลเดอร์โมดูลในส่วนโครงการของ Android Studio (ฉันใช้รุ่น 0.2.10)
Modules
ส่วนในProject Structure
หน้าต่าง
ฉันจะพิจารณาDependencies, ไลบรารี Android และการตั้งค่าหลายโครงการที่จำเป็นในการอ่าน โปรดสละเวลาสองสามนาที
โดยเฉพาะอย่างยิ่งในกรณีของโครงการห้องสมุดที่ไม่ใช่ jar อ่านตัวอย่างต่อไปนี้จากแหล่งข้อมูลด้านบน:
โครงการ Gradle ยังสามารถขึ้นอยู่กับโครงการ Gradle อื่น ๆ โดยใช้การตั้งค่าหลายโครงการ การตั้งค่าหลายโครงการมักจะทำงานได้โดยให้โครงการทั้งหมดเป็นโฟลเดอร์ย่อยของโครงการรากที่กำหนด
ตัวอย่างเช่นมอบให้กับโครงสร้างต่อไปนี้:
MyProject/
+ app/
+ libraries/
+ lib1/
+ lib2/
เราสามารถระบุได้ 3 โครงการ Gradle จะอ้างอิงพวกเขาด้วยชื่อต่อไปนี้:
:app
:libraries:lib1
:libraries:lib2
แต่ละโครงการจะมี build.gradle เป็นของตัวเองประกาศว่าจะสร้างได้อย่างไร นอกจากนี้จะมีไฟล์ชื่อ settings.gradle ที่รูทประกาศโครงการ สิ่งนี้ทำให้โครงสร้างต่อไปนี้:
MyProject/
| settings.gradle
+ app/
| build.gradle
+ libraries/
+ lib1/
| build.gradle
+ lib2/
| build.gradle
เนื้อหาของ settings.gradle นั้นง่ายมาก:
include ':app', ':libraries:lib1', ':libraries:lib2'
สิ่งนี้กำหนดว่าโฟลเดอร์ใดเป็นโครงการ Gradle
โครงการแอปมีแนวโน้มที่จะขึ้นอยู่กับไลบรารีและสิ่งนี้ทำได้โดยการประกาศการพึ่งพาต่อไปนี้:
dependencies {
compile project(':libraries:lib1')
}
โปรดทราบว่ามีการใช้ Android Studio GUI เพียงเล็กน้อยหรือไม่มีเลยในการทำให้เรื่องนี้เกิดขึ้น
ฉันกำลังใช้submodules gitเพื่อเชื่อมโยงไลบรารีที่ซ้อนกันกับ repo git ของไลบรารีที่แท้จริงเพื่อหลีกเลี่ยงการพึ่งพา
ฉันเพิ่งค้นพบวิธีที่ง่ายกว่า (แทนที่จะเขียนลงในไฟล์. Gradle โดยตรง)
นี่สำหรับ Android Studio 1.1.0
ไฟล์เมนู-> โมดูลใหม่ ... :
คลิกที่ "นำเข้าโครงการที่มีอยู่"
เลือกไลบรารีที่ต้องการและโมดูลที่ต้องการ
คลิกเสร็จสิ้น Android Studio จะนำเข้าไลบรารีไปยังโครงการของคุณ มันจะซิงค์ไฟล์ gradle
เพิ่มโมดูลที่นำเข้าเพื่อการอ้างอิงของโครงการของคุณ
คลิกขวาที่โฟลเดอร์แอพ -> เปิดการตั้งค่าโมดูล -> ไปที่แท็บการอ้างอิง -> คลิกที่ปุ่ม '+' -> คลิกที่การพึ่งพาโมดูล
จากนั้นโมดูลห้องสมุดจะถูกเพิ่มเข้ากับการอ้างอิงของโครงการ
???
กำไร
วิธีที่ง่ายที่สุดที่ฉันพบเพื่อรวมโครงการห้องสมุดภายนอกคือ (ตัวอย่างเช่นการรวมห้องสมุด Facebook ซึ่งเก็บไว้หนึ่งไดเรกทอรีในโฟลเดอร์อ้างอิง):
ใน settings.gradle เพิ่ม
include ':facebook'
project(':facebook').projectDir = new File(settingsDir, '../dependencies/FacebookSDK')
ในส่วน build.gradle การอ้างอิงเพิ่ม
compile project ('facebook')
สิ่งที่ต้องทำทั้งหมดคือซิงโครไนซ์โครงการกับไฟล์ gradle
วิธีง่ายๆในการเพิ่มไฟล์ JAR เป็นไลบรารีในโครงการ Android Studio ของคุณ:
a) คัดลอกไฟล์ * .jar ของคุณ
b) วางลงในไดเรกทอรีlibsภายใต้โครงการของคุณ:
c) เพิ่มใน build.gradle:
dependencies {
...
compile files('libs/ScanAPIAndroid.jar', 'libs/ScanAPIFactoryAndroid.jar', .., ..)
}
b) หากโครงการของคุณจากตัวอย่าง com.example.MYProject และไลบรารี com.example.ScanAPI มีเนมสเปซ com.example เดียวกัน Android Studio จะตรวจสอบการสร้างและสร้างการเปลี่ยนแปลงที่จำเป็นทั้งหมดในโครงการของคุณ หลังจากนั้นคุณสามารถตรวจสอบการตั้งค่าเหล่านี้ในเมนูไฟล์ -> โครงสร้างโครงการ
c) หากโครงการและไลบรารีของคุณมีเนมสเปซอื่นคุณต้องคลิกขวาที่ไลบรารีและเลือกตัวเลือก "เพิ่มเป็นห้องสมุด" และเลือกประเภทที่คุณต้องการ
จำไว้ว่าตัวเลือก "โครงสร้างโครงการ" ไม่ได้ทำการเปลี่ยนแปลงอัตโนมัติใน "build.gradle" ใน Android Studio รุ่นปัจจุบัน (0.2.3) บางทีคุณลักษณะนี้อาจมีให้ในรุ่นถัดไป
ไฟล์ build.gradle ที่เกี่ยวข้องจะอัปเดตโดยอัตโนมัติ
เปิดไฟล์ build.gradle ของคุณและเพิ่มกฎการสร้างใหม่เพื่อปิดการอ้างอิง ตัวอย่างเช่นหากคุณต้องการเพิ่มบริการ Google Play ส่วนการอ้างอิงของโครงการของคุณจะมีลักษณะดังนี้:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.gms:play-services:6.5.+'
}
ในแผงโครงการControl+ คลิกโมดูลที่คุณต้องการเพิ่มการพึ่งพาและเลือกเปิดการตั้งค่าโมดูล
เลือกแท็บ Dependencies ตามด้วยปุ่ม + ที่มุมล่างซ้าย คุณสามารถเลือกจากรายการตัวเลือกต่อไปนี้:
จากนั้นคุณสามารถป้อนข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาที่คุณต้องการเพิ่มในโครงการของคุณ ตัวอย่างเช่นหากคุณเลือก Library Dependency Android Studio จะแสดงรายการไลบรารีเพื่อให้คุณเลือก
เมื่อคุณเพิ่มการพึ่งพาแล้วให้ตรวจสอบไฟล์ build.gradle ระดับโมดูลของคุณ ควรอัปเดตโดยอัตโนมัติเพื่อรวมการพึ่งพาใหม่
ในโครงการที่คุณต้องการเพิ่มโครงการห้องสมุดภายนอกให้ไปที่เมนูไฟล์ -> ใหม่ -> * นำเข้าโมดูลใหม่ ** นำทางไปยังโครงการห้องสมุดที่คุณต้องการเพิ่มโครงการของคุณเลือกเพื่อเพิ่มโมดูล 'ห้องสมุด' ใน โครงการของคุณ คุณจะได้รับsettings.gradleในโครงการของคุณ, ข้างแอพ, รวมไลบรารี, สิ่งนี้:
include ':app', ':library'
เพิ่มในbuild.gradle (โมดูล: แอพ)ในส่วนการพึ่งพา:
โครงการคอมไพล์ (': library')
สร้างโครงการอีกครั้งและนั่นคือมัน
* คุณสามารถเพิ่มไลบรารี (โมดูล) ได้มากเท่าที่คุณต้องการ ในกรณีนั้นใน settings.gradle คุณจะมี:
include ':app', ':lib1', ':lib2', ...
และใน build.gradle คุณจะต้อง:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
// Some other dependencies...
compile project(':lib1')
compile project(':lib2')
...
}
หากคุณต้องการเข้าถึงทรัพยากรของโครงการห้องสมุด (เช่นเดียวกับ ABS) ให้แน่ใจว่าคุณเพิ่มโครงการ / โมดูลห้องสมุดเป็น "การพึ่งพาโมดูล" แทน "ห้องสมุด"
คุณสามารถทำได้อย่างง่ายดาย ไปที่เมนูไฟล์ -> ใหม่ -> นำเข้าโมดูล ... :
ค้นหาไดเรกทอรีที่มีโมดูล คลิกเสร็จสิ้น:
ไปที่โครงสร้างโครงการและเพิ่มการพึ่งพาโมดูล :
หมายเหตุ: หากคุณได้รับข้อผิดพลาด SDK ให้อัปเดตอันนั้น
การแก้ไขการพึ่งพาไลบรารีผ่าน GUI ไม่แนะนำให้เลือกเนื่องจากจะไม่เขียนการเปลี่ยนแปลงเหล่านั้นไปยังไฟล์ build.gradle ของคุณ ดังนั้นโครงการของคุณจะไม่สร้างจากบรรทัดคำสั่ง เราควรแก้ไขไฟล์ build.gradle โดยตรงดังต่อไปนี้
ตัวอย่างเช่นมอบให้กับโครงสร้างต่อไปนี้:
โครงการของฉัน/
เราสามารถระบุสามโครงการ Gradle จะอ้างอิงพวกเขาด้วยชื่อต่อไปนี้:
โครงการแอปมีแนวโน้มที่จะขึ้นอยู่กับไลบรารีและสิ่งนี้ทำได้โดยการประกาศการพึ่งพาต่อไปนี้:
dependencies {
compile project(':libraries:lib1')
}
ในการเพิ่มคำตอบ: หาก IDE ไม่แสดงข้อผิดพลาดใด ๆ แต่เมื่อคุณพยายามรวบรวมคุณจะได้รับสิ่งต่อไปนี้
No resource found that matches the given name 'Theme.Sherlock.Light'
อาจมีการรวบรวมโครงการห้องสมุดของคุณเป็นโครงการแอปพลิเคชัน หากต้องการเปลี่ยนแปลงสิ่งนี้ไปที่:
ไฟล์เมนู-> โครงสร้างโครงการ -> แง่มุม -> [ชื่อห้องสมุด] -> ทำเครื่องหมาย "โมดูลห้องสมุด"
วิธีแรกสิ่งนี้ใช้ได้กับ MacBook
ก่อนอื่นให้เลือกไฟล์ builder.gradle ของคุณตามหน้าจอที่กำหนด:
เพิ่มการพึ่งพาเช่นเดียวกับบนหน้าจอที่เลือก:
เลือกซิงค์โครงการ
หากคุณได้รับข้อผิดพลาดเช่น "Project with path ': ไม่พบลายเซ็นต์' ในโปรเจค ': แอพ' ', โปรดใช้วิธีที่สอง:
เลือกเมนูไฟล์ -> ใหม่ -> นำเข้าโมดูล ... :
หลังจากคลิกที่นำเข้าโมดูล ,
ให้เส้นทางของห้องสมุดเหมือนเส้นทาง MacBook ของฉัน:
คลิกที่เสร็จสิ้น ตอนนี้ห้องสมุดของคุณจะถูกเพิ่ม
หลังจากนำเข้าโมดูล ABS (จากไฟล์> โครงสร้างโครงการ) และทำให้แน่ใจว่ามี Android 2.2 และ Support Library v4 เป็นการอ้างอิงฉันยังคงได้รับข้อผิดพลาดต่อไปนี้เมื่อคุณ @Alex
Error retrieving parent for item: No resource found that matches the given name 'Theme.Sherlock.Light.DarkActionBar'
ฉันเพิ่มโมดูลที่นำเข้าใหม่เป็นการพึ่งพาโมดูลแอปหลักของฉันและแก้ไขปัญหาได้แล้ว
Gradle: Error retrieving parent for item: No resource found that matches the given name 'Theme.Sherlock.Light'.
แต่ฉันยังคงมี ดูเหมือนว่าโครงการหลักของฉันไม่เห็นทรัพยากรของโครงการห้องสมุด (ABS) อย่างไรก็ตาม IDE จะจดจำการอ้างอิงไปยังคลาสและทรัพยากร สกรีน
เพียงเพิ่มชื่อไลบรารีในบล็อกการพึ่งพาของไฟล์build.gradleของแอปของคุณ
dependencies {
// ...
implementation 'com.example:some-library:1.0.0'
}
โปรดทราบว่าคุณควรใช้implementation
มากกว่าcompile
นี้ นี่คือใหม่กับ Android Studio 3.0 ดูคำถาม & คำตอบนี้เพื่ออธิบายความแตกต่าง
com.android.tools.build:gradle:2.3.3
แทน 3.0.0 ใน Android Studio 3 ได้หากคุณต้องการใช้ "คอมไพล์" ต่อไป
ในการแก้ไขปัญหานี้คุณเพียงแค่เพิ่มเส้นทางทรัพยากร abs ไปยังไฟล์สร้างโครงการของคุณเช่นเดียวกับด้านล่าง:
sourceSets {
main {
res.srcDirs = ['src/main/res','../../ActionBarSherlock/actionbarsherlock/res']
}
}
ดังนั้นฉันรวบรวมอีกครั้งโดยไม่มีข้อผิดพลาด
หากคุณมี Android Studio .0.4.0 คุณสามารถสร้างโฟลเดอร์ใหม่ในเส้นทางการสร้างของคุณYourApp/libraries
ได้ คัดลอกไฟล์ JAR คลิกขวาบนแล้วคลิก "เพิ่มเป็นห้องสมุด" ตอนนี้คุณมีป๊อปอัป เพียงแค่เลือกไดเรกทอรีของคุณแล้วกดตกลงเท่านั้น
เพียงแค่นำเข้าโครงการห้องสมุด Android เป็นโมดูลและBuild.gradle
ใช้ปลั๊กอิน: 'com.android.library'
หลังจากนั้นทำตามขั้นตอนเหล่านี้:
https://www.dropbox.com/s/1e3eteu3h0pmkf7/Android%20studio%20_doc.doc?dl=0เป็นลิงก์ Dropbox ของวิธีเพิ่มไฟล์ JAR และไลบรารีโครงการใน Android Studio 1.0.1 เวอร์ชันล่าสุด
โปรดดูเอกสารประกอบพร้อมภาพหน้าจอ มันง่ายมากสำหรับผู้ใช้ใหม่
ฉันพบวิธีแก้ปัญหา มันง่ายมาก ทำตามคำแนะนำ froger_mcs
ตรวจสอบให้แน่ใจว่าคุณทำให้โฟลเดอร์ src เป็นโฟลเดอร์ซอร์สในโครงสร้างโครงการ -> โมดูล (แหล่งที่มา)
โดยทั่วไปคุณสามารถรวมไฟล์ JAR ของคุณได้สามวิธี สุดท้ายคือรีโมตไลบรารีที่ใช้https://bintray.com/ jcenter online repository แต่ถ้าคุณทำอย่างใดอย่างหนึ่งในสองวิธีอื่น ๆ ไฟล์ JAR จะรวมอยู่ในโครงการของคุณ โปรดอ่านลิงค์นี้https://stackoverflow.com/a/35369267/5475941สำหรับข้อมูลเพิ่มเติม ในโพสต์นี้ฉันอธิบายวิธีนำเข้าไฟล์ JAR ของคุณใน Android studio และฉันอธิบายวิธีที่เป็นไปได้ทั้งหมด
โดยสรุปถ้ามันเป็นเช่นนี้ (ที่อยู่ในพื้นที่) พวกเขาจะถูกดาวน์โหลดและไฟล์ JAR เหล่านี้มีอยู่จริงในโครงการ:
แต่ถ้าเป็นที่อยู่อินเทอร์เน็ตเช่นนี้พวกเขาจะเป็นรีโมตไลบรารี (bintray.com jcenter part) และพวกมันจะถูกใช้จากระยะไกล:
ฉันหวังว่ามันจะช่วย
เปิดไฟล์แอปโมดูล gradle และเพิ่มการพึ่งพาของคุณ หากคุณดาวน์โหลดไลบรารี่เพียงนำเข้าและสร้างเป็นไฟล์ไล่ระดับ
มิฉะนั้นเพิ่มที่เก็บในแอปโมดูล gradle ด้าน:
repositories {
maven { url 'http://clinker.47deg.com/nexus/content/groups/public' }
}
ที่เก็บแรกจะดาวน์โหลดห้องสมุดให้คุณ
และรวบรวมไลบรารีที่ดาวน์โหลดมา:
compile ('com.fortysevendeg.swipelistview:swipelistview:1.0-SNAPSHOT@aar') {
transitive = true
}
หากคุณกำลังสร้างห้องสมุดคุณเพียงแค่ต้องนำเข้าโครงการเป็นการนำเข้าโมดูลใหม่
ฉันมีสาเหตุที่แตกต่างกันของปัญหาดังนั้นสำหรับคน:
repositories {
mavenCentral()
}
เปลี่ยน mavenCentral () เป็น jcenter () และเพิ่ม
allprojects {
repositories {
jcenter()
}
}
ใน Android Studio ให้ไปที่โฟลเดอร์แอพแล้วเปิดไฟล์ build.gradle ที่นี่คุณจะเห็นการพึ่งพา {} ข้างในนั้นคุณสามารถเพิ่มโครงการห้องสมุดและประสาน ทันทีหลังจากซิงโครไนซ์ไลบรารีมันจะถูกเพิ่มลงในโครงการของคุณและคุณสามารถใช้ฟังก์ชั่นและคลาสของมันในโครงการของคุณ
สำหรับ Android Studio:
คลิกที่Build.gradle (โมดูล: app)
และเพิ่มสำหรับ
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile files('libs/commons-io-2.4.jar')
}
และในไดเรกทอรี "แอป" ของคุณให้สร้างไดเรกทอรี "libs" เพิ่มไฟล์ yourfile.jar:
สุดท้ายให้รวบรวมไฟล์ Gradle:
ฉันพบปัญหาเดียวกันจากนั้นฉันก็ทำสิ่งต่อไปนี้
ฉันนำเข้าโครงการห้องสมุดลงใน AndroidStudio IDE ของฉันเป็นโมดูลโดยใช้เมนูไฟล์ -> นำเข้าเมนูโมดูล
จากนั้นฉันไปที่โมดูลหลักซึ่งฉันต้องการให้โครงการห้องสมุดเป็นโครงการที่ต้องพึ่งพา
คลิกขวาที่โมดูลหลัก (ในกรณีของฉันชื่อมันคือแอพ ) -> การตั้งค่าโมดูลเปิด -> ไปที่แท็บการพึ่งพา -> คลิกที่ปุ่ม + (คุณจะได้รับทางด้านขวาของหน้าต่าง) -> คลิกที่การพึ่งพาโมดูล - > เลือกโครงการห้องสมุดของคุณจากรายการ
ใช้การเปลี่ยนแปลงและคลิกOKปุ่ม
มันใช้งานได้สำหรับฉัน ฉันหวังว่ามันจะช่วยคนอื่นด้วย
เพิ่มสิ่งนี้ในไฟล์ build gradle ของคุณ:
dependencies {
implementation 'com.jakewharton:butterknife:9.0.0'
}
แท้จริงแล้วเมื่อเวอร์ชั่นกำลังเปลี่ยนแปลงดังนั้นการเปลี่ยนอินเทอร์เฟซผู้ใช้และตัวเลือกที่มีอยู่ในเมนู หลังจากที่ได้อ่านมากที่สุดของคำตอบของคำถามเหล่านี้ผมต้องคาดเดาสิ่งที่จะทำงานให้Android 1.1.0
ใช้เมาส์เลือกโครงการที่ระดับหลัก (นี่คือที่ที่จะแสดงชื่อแอพของคุณ)
คลิกขวาและเลือกตัวเลือกเมนูใหม่, โฟลเดอร์สินทรัพย์โฟลเดอร์
หลังจากสร้างโฟลเดอร์สินทรัพย์แล้วให้วางหรือคัดลอกไฟล์ใดก็ได้ที่คุณต้องการสำหรับไฟล์ JAR ของคุณ
จากเมนูหลักของ Android ของสตูดิโอ (ด้านบนของหน้าจอ) เลือกไฟล์ -> โครงสร้างโครงการ
จากนั้นเลือกชื่อโครงการของคุณและไปที่แท็บการพึ่งพา
คลิกที่เครื่องหมายบวก ( +) ที่ด้านล่างซ้ายของกล่องโต้ตอบและเลือกการขึ้นต่อกันของไฟล์
ในที่สุดก็เปิดโฟลเดอร์สินทรัพย์ที่สร้างขึ้นเมื่อเร็ว ๆ นี้เลือกไฟล์ JAR OKที่คุณคัดลอกแล้วคลิกนำมาใช้และ
ทำความสะอาดและสร้างโครงการของคุณใหม่