คำนำ: นี่ไม่ใช่คำถามเกี่ยวกับวิธีใช้ชนิดบิลด์และรสชาติของผลิตภัณฑ์ในแอพ Android ฉันเข้าใจแนวคิดพื้นฐานที่เกี่ยวข้อง คำถามนี้เกี่ยวกับการพยายามทำความเข้าใจกับการกำหนดค่าที่ควรระบุในรูปแบบบิลด์ซึ่งการกำหนดค่าควรจะระบุในรสชาติของผลิตภัณฑ์และความแตกต่างใด ๆ ที่จำเป็นจริงๆ
สัปดาห์นี้ฉันได้เรียนรู้เพิ่มเติมเกี่ยวกับการกำหนดค่าแบบค่อยเป็นค่อยไปสำหรับแอพ Android ตอนแรกฉันคิดว่าฉันมีความสามารถที่ดีในการสร้างประเภทและรสชาติของผลิตภัณฑ์ แต่ยิ่งฉันได้รับเอกสารมากเท่าไหร่ฉันก็ยิ่งรู้ว่าความแตกต่างระหว่างคนทั้งสองไม่ชัดเจนสำหรับฉันเลย
เนื่องจากมีลำดับชั้นที่กำหนดไว้อย่างดี (ในแง่ที่ว่าคุณสมบัติที่ระบุในบิลด์ประเภทมีความสำคัญมากกว่าที่ระบุในรสชาติผลิตภัณฑ์) ฉันไม่เข้าใจว่าทำไมจึงมีความจำเป็นที่จะต้องแยกแยะระหว่างบิลด์ประเภทและรสชาติผลิตภัณฑ์เลย จะเป็นการดีกว่าที่จะรวมคุณสมบัติและวิธีการทั้งหมดลงในวัตถุ DSL สำหรับรสชาติของผลิตภัณฑ์และจากนั้นให้ถือว่าประเภทการสร้างเป็นมิติเริ่มต้นของรสชาติ
ตัวอย่างที่เป็นรูปธรรมบางอย่างที่นำไปสู่ความสับสนของฉัน:
signingConfig
คุณสมบัติสามารถตั้งค่าในการสร้างทั้งชนิดและรสชาติสินค้า ... แต่minifyEnabled
(และผมถือว่าshrinkResources
?) เท่านั้นที่สามารถกำหนดค่าในการสร้างประเภทapplicationId
สามารถระบุได้เฉพาะในรสชาติผลิตภัณฑ์ ... และapplicationIdSuffix
สามารถระบุได้เฉพาะในประเภทบิลด์!?
คำถามจริง :
จากตัวอย่างข้างต้น: มีความแตกต่างที่ชัดเจนระหว่างบทบาทของประเภทการสร้างและรสชาติของผลิตภัณฑ์หรือไม่
ถ้าอย่างนั้นเป็นวิธีที่ดีที่สุดที่จะเข้าใจมันคืออะไร?
ถ้าไม่เป็นแผนในที่สุดจะรวมประเภทการสร้างและรสชาติของผลิตภัณฑ์เป็นวัตถุ DSL ที่กำหนดค่าได้หรือไม่
applicationId
ตัวอย่างได้