โปรดทราบ:คำตอบแก้ไขหลังจากคำตอบของซาเวียร์
ฉันกำลังพยายามใช้Build Flavours ที่แตกต่างกันสำหรับโครงการแอปพลิเคชันเดียวกันใน Android Studio อย่างไรก็ตามฉันดูเหมือนจะมีช่วงเวลาแย่มากที่กำหนดให้ทำงานได้อย่างเหมาะสม
ขั้นตอน:
- สร้างโครงการ Android Studio ใหม่ชื่อ 'ทดสอบ'
เปิด build.gradle * และเพิ่มบรรทัดต่อไปนี้:
productFlavors { flavor1 { packageName 'com.android.studio.test.flavor1' } flavor2 { packageName 'com.android.studio.test.flavor2' } }
- หลังจากรีสตาร์ท Android Studio ตอนนี้ฉันเห็นรูปแบบการสร้าง 4 แบบในส่วน Build Variants หมายความว่าเราประสบความสำเร็จในการติดตั้งรสชาติผลิตภัณฑ์จนถึงขณะนี้ **
สร้างโฟลเดอร์ซอร์สใหม่สำหรับflavor1 ; อย่างไรก็ตามฉันไม่แน่ใจว่าฉันทำถูกหรือไม่ นี่คือวิธีที่ฉันทำ:
- โปรดทราบว่าชื่อแพ็คเกจของฉันสำหรับโครงการนี้คือ:
com.foo.test
- คลิกขวาที่
src
โฟลเดอร์สำหรับ flavor1src/flavor1/java/com/foo/test/MainActivity.java
จริงผมสร้างโฟลเดอร์ในแต่ละสำรวจในทางที่โครงสร้างเป็น - ข้างต้นทำงานได้ดีเนื่องจากโฟลเดอร์ 'java' เป็นสีน้ำเงินหมายความว่า IDE รู้ว่ามันเป็นไดเรกทอรีที่ใช้งานอยู่ นอกจากนี้แพคเกจถูกสร้างขึ้นโดยอัตโนมัติ อย่างไรก็ตามเรื่องนี้ฉันได้รับคำเตือนเกี่ยวกับการเรียนซ้ำ ดูภาพหน้าจอที่นี่
- สำหรับ flavor2 ฉันพยายามสร้างแพ็คเกจด้วยตนเอง แต่โฟลเดอร์ 'src' สำหรับ flavor2 ดูเหมือนจะไม่เป็นสีน้ำเงินดังนั้นตัวเลือกต่าง ๆ เมื่อคลิกขวาและ 'แพ็คเกจใหม่' ไม่สามารถใช้ได้ ดูภาพได้ที่นี่
- โปรดทราบว่าสำหรับ flavor1 ฉันยังสร้างไดเรกทอรี 'res' ซึ่งเปลี่ยนเป็นสีน้ำเงิน แต่แม้จะไม่มีความสามารถในการสร้างไฟล์ Android Resource หรือไดเรกทอรีทรัพยากร Andorid ในกรณีที่ฉันต้องการใช้ที่แตกต่างกัน resoruces สำหรับรสชาติที่แตกต่าง
- โปรดทราบว่าชื่อแพ็คเกจของฉันสำหรับโครงการนี้คือ:
ฉันกำลังทำอะไรผิดหรือเปล่า? หรือฉันกำลังพลาดอะไรอยู่? แจ้งให้เราทราบหากคุณต้องการข้อมูลเพิ่มเติม
* โครงการของฉันดูเหมือนจะมีไฟล์ build.gradle สองไฟล์ หนึ่งที่อยู่บนรูทของโฟลเดอร์โครงการ (\ GradleTest) อันนี้ว่างเปล่า อันที่สองที่อยู่บนรูตของโฟลเดอร์ย่อยของ \ GradleTest ที่มีป้ายกำกับ 'GradleTest' (GradleTest-GradleTest) นี่คืออันที่มีรหัสเมื่อเปิดอยู่แล้ว ดังนั้นนั่นคือสิ่งที่ฉันแก้ไข
** ฉันจะตรวจสอบการตั้งค่า gradle และเห็นได้ชัดว่าการใช้รถยนต์นำเข้าถูกเปิดใช้งานแล้ว อย่างไรก็ตามสิ่งนี้การเปลี่ยนแปลงไฟล์ build.gradle ไม่ได้อัพเดตชุดตัวเลือกการสร้างโดยอัตโนมัติ หมายเหตุ:ฉันได้ลองใช้ Build - สร้างโครงการใหม่และ / หรือ Build - สร้างโครงการโดยไม่ต้องไป ฉันยังคงต้องปิดโครงการและเปิดใหม่เพื่อให้การเปลี่ยนแปลงมีผล
applicationId
packageName