กำหนดค่าการนำส่งเวลาติดตั้ง

โมดูลฟีเจอร์ช่วยให้คุณแยกฟีเจอร์และทรัพยากรบางอย่างได้ จากโมดูลฐานของแอปและรวมไว้ใน App Bundle คุณสามารถ จากนั้นปรับแต่งตัวเลือกการนำส่ง เพื่อควบคุมเวลาและวิธีที่อุปกรณ์ที่ใช้ Android 5.0 (API ระดับ 21) ขึ้นไป ดาวน์โหลดฟีเจอร์ของแอป

โปรดจำไว้ว่าการแยกส่วนประเภทนี้ต้องใช้ความพยายามมากขึ้น และ การเปลี่ยนโครงสร้างภายในโค้ดที่มีอยู่ของแอปคุณ ดังนั้นควรพิจารณาอย่างรอบคอบว่าโค้ดใด ฟีเจอร์ของแอปจะได้รับประโยชน์มากที่สุดเมื่อพร้อมให้บริการแก่ผู้ใช้แบบออนดีมานด์

หากต้องการค่อยๆ ทำให้ฟีเจอร์ของแอปค่อยๆ แยกเป็นส่วนๆ เมื่อเวลาผ่านไป เปลี่ยนการทำงานของแอป หรือปรับแต่งตัวเลือกการแสดงโฆษณาขั้นสูง โดยการสร้างโมดูลฟีเจอร์ที่กำหนดค่าสำหรับเวลาติดตั้ง กล่าวคือ คุณสามารถทำให้ฟีเจอร์เป็นโมดูลฟีเจอร์ได้ แต่ เปิดใช้ตัวเลือกขั้นสูงเพื่อให้ฟีเจอร์นี้พร้อมใช้งานเมื่อผู้ใช้ติดตั้ง แอป

นอกจากนี้ โมดูลฟีเจอร์ที่กำหนดค่าสำหรับการนำส่งเวลาติดตั้งจะมีตัวเลือกให้ถอนการติดตั้งในภายหลังหากไม่จำเป็นต้องใช้แล้ว อุปกรณ์เหล่านั้นต้องตั้งค่าให้ถอดออกได้

ส่วนนี้จะอธิบายวิธีสร้างโมดูลฟีเจอร์สำหรับเวลาติดตั้ง ก่อนเริ่มต้น โปรดตรวจสอบว่าคุณ ใช้ Android Studio 3.5 ขึ้นไปและปลั๊กอิน Android Gradle 3.5.0 หรือสูงกว่า

กำหนดค่าโมดูลใหม่สำหรับการนำส่งเวลาติดตั้ง

วิธีที่ง่ายที่สุดในการสร้างโมดูลฟีเจอร์ใหม่คือการใช้ Android Studio 3.5 ขึ้นไป เนื่องจากโมดูลฟีเจอร์มี การขึ้นต่อกันโดยธรรมชาติของโมดูลแอปพื้นฐาน คุณจะสามารถเพิ่มโมดูลเหล่านั้นลงใน โปรเจ็กต์ของแอป

วิธีเพิ่มโมดูลฟีเจอร์ลงในโปรเจ็กต์แอปโดยใช้ Android Studio โดยทำตามขั้นตอนต่อไปนี้

  1. เปิดโปรเจ็กต์แอปใน IDE หากยังไม่ได้เปิด
  2. เลือก ไฟล์ > ใหม่ > โมดูลใหม่จากแถบเมนู
  3. ในกล่องโต้ตอบสร้างโมดูลใหม่ ให้เลือก Dynamic Feature Module แล้วคลิก Next
  4. ในส่วนกำหนดค่าโมดูลใหม่ ให้กรอก ดังต่อไปนี้:
    1. เลือกโมดูลแอปพลิเคชันพื้นฐานสำหรับโปรเจ็กต์แอปจาก เมนูแบบเลื่อนลง
    2. ระบุชื่อโมดูล IDE ใช้ชื่อนี้เพื่อระบุ เป็นโปรเจ็กต์ย่อย Gradle ใน ไฟล์การตั้งค่า Gradle เมื่อคุณ สร้าง App Bundle โดย Gradle จะใช้องค์ประกอบสุดท้ายของโปรเจ็กต์ย่อย ชื่อที่จะแทรกแอตทริบิวต์ <manifest split> ใน ไฟล์ Manifest ของโมดูลฟีเจอร์
    3. ระบุชื่อแพ็กเกจของโมดูล โดยค่าเริ่มต้น Android Studio แนะนำชื่อแพ็กเกจที่รวมชื่อแพ็กเกจรูทของ โมดูลฐานและชื่อโมดูลที่คุณระบุไว้ในขั้นตอนก่อนหน้า
    4. เลือกระดับ API ขั้นต่ำที่คุณต้องการให้โมดูลรองรับ ค่านี้ควรตรงกับของโมดูลฐาน
  5. คลิกถัดไป
  6. ในส่วนตัวเลือกการดาวน์โหลดโมดูล ให้กรอกข้อมูลต่อไปนี้

    1. ระบุชื่อโมดูลโดยใช้อักขระได้สูงสุด 50 ตัว ฐานแอปของคุณ โมดูลต้องมีชื่อโมดูลเป็น สตริงทรัพยากร ซึ่งคุณ แปลได้ เมื่อสร้างโมดูลโดยใช้ Android Studio, IDE เพิ่มทรัพยากรสตริงลงในโมดูลฐานให้คุณ และแทรกพารามิเตอร์ รายการต่อไปนี้ในไฟล์ Manifest ของโมดูลฟีเจอร์

      <dist:module
          ...
          dist:title="@string/feature_title">
      </dist:module>
      
    2. ในเมนูแบบเลื่อนลงภายใต้การรวมเวลาติดตั้ง ให้เลือกรวม ณ เวลาติดตั้ง Android Studio จะแทรกข้อมูลต่อไปนี้ใน ไฟล์ Manifest ของโมดูลดังกล่าวเพื่อแสดงสิ่งที่คุณเลือก

      <dist:module ... >
        <dist:delivery>
            <dist:install-time />
        </dist:delivery>
      </dist:module>
      

      หากต้องการดูวิธีสร้างโมดูลฟีเจอร์ ที่คุณสามารถดาวน์โหลดหลังจากติดตั้งแอป อ่าน กำหนดค่าการแสดงโฆษณาแบบออนดีมานด์

    3. เลือกช่อง Fusing หากต้องการให้โมดูลนี้พร้อมใช้งาน สำหรับอุปกรณ์ที่ใช้ Android 4.4 (API ระดับ 20) และต่ำกว่า และรวมอยู่ใน APK หลายรายการ ซึ่งหมายความว่าคุณสามารถยกเว้นการเข้าถึงบนอุปกรณ์ที่ไม่รองรับ การดาวน์โหลดและติดตั้ง APK แยกส่วน Android Studio จะแทรก ต่อไปนี้ในไฟล์ Manifest ของโมดูลเพื่อให้สอดคล้องกับตัวเลือกของคุณ

      <dist:module ...>
          <dist:fusing dist:include="true | false" />
      </dist:module>
      
  7. คลิกเสร็จสิ้น

หลังจากที่ Android Studio สร้างโมดูลเสร็จแล้ว ให้ตรวจสอบเนื้อหา เองจากแผงโปรเจ็กต์ (เลือกมุมมอง > หน้าต่างเครื่องมือ > โปรเจ็กต์ จากแถบเมนู) โค้ด ทรัพยากร และองค์กรเริ่มต้นควรเป็น คล้ายกับโมดูลแอปมาตรฐาน

ทำให้โมดูลเวลาติดตั้งแบบถอดออกได้

การสร้างโมดูลฟีเจอร์สำหรับการนำส่งเวลาติดตั้งที่มีตัวเลือกให้ถอนการติดตั้งในภายหลังได้หากไม่จำเป็นอีกต่อไป อาจเป็นประโยชน์ ตัวอย่างเช่น หากต้องการลดขนาดที่ติดตั้งของ คุณสามารถกำหนดเนื้อหาที่จำเป็นสำหรับการฝึกอบรมหรือการเตรียมความพร้อม จากนั้น ถอนการติดตั้งโมดูลฟีเจอร์โดยใช้ Play Core API หลังจากที่ผู้ใช้ตั้งค่าให้ใช้แอปของคุณแล้ว

โดยค่าเริ่มต้น คุณจะนำโมดูลเวลาติดตั้งออกได้ หากต้องการทำเครื่องหมายโมดูลว่านำออกได้และอนุญาตให้ถอนการติดตั้งได้ ให้เพิ่มแท็ก removable แล้วตั้งค่าเป็น true:

<dist:module ... >
  <dist:delivery>
      <dist:install-time>
          <dist:removable dist:value="true"/>
      </dist:install-time>
  </dist:delivery>
</dist:module>