0Pricing
Android Academy · บทเรียน

เมื่อใดควรใช้ WorkManager

เลือกเครื่องมือทำงานเบื้องหลังที่เหมาะสม

เมื่อใดควรใช้ WorkManager เป็นบทเรียน Android Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Android Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Android Academy มีบทเรียนทั้งหมด 4 บทเรียน

เมื่อใดควรใช้ WorkManager

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

เลื่อนได้และรับประกันว่าจะทำงาน

คำสำคัญสองคำนี้กำหนดขอบเขตการใช้งานของ WorkManager:

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

กรณีการใช้งานที่เหมาะสม

WorkManager เหมาะกับงานเช่น:

  • อัปโหลดบันทึกการทำงานหรือข้อมูลวิเคราะห์
  • ซิงค์ข้อมูลกับเซิร์ฟเวอร์
  • สำรองข้อมูลเป็นระยะ
  • บีบอัดหรือประมวลผลภาพ

งานทั้งหมดนี้รอได้และต้องไม่สูญหาย

เมื่อใดไม่ควรใช้

WorkManager ไม่เหมาะกับงานต่อไปนี้:

  • งาน ทันที ในแอปที่ผูกกับหน้าจอปัจจุบัน: ใช้คอร์รูทีนใน viewModelScope
  • การปลุกให้ทำงานใน เวลาที่แน่นอน: ใช้ AlarmManager
  • งานระยะยาวที่ ผู้ใช้เริ่มและต้องทำให้เสร็จทันที: พิจารณาใช้บริการเบื้องหน้า

เคารพสุขภาพของระบบ

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

ข้อจำกัดควบคุมการทำงาน

คุณแนบ ข้อจำกัด เช่น "เฉพาะบนเครือข่ายที่ไม่คิดค่าบริการตามปริมาณข้อมูล" หรือ "เฉพาะขณะกำลังชาร์จ" ได้ WorkManager จะรอจนกว่าจะตรงตามเงื่อนไขเหล่านั้นก่อนเริ่มงาน

จัดการการคงอยู่ของงาน

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

ทำครั้งเดียวเทียบกับทำเป็นระยะ

WorkManager รองรับงานสองรูปแบบ:

  • OneTimeWorkRequest: ทำงานครั้งเดียว
  • PeriodicWorkRequest: ทำซ้ำตามช่วงเวลา (อย่างน้อย 15 นาที)

การลองใหม่ในตัว

หากงานล้มเหลวชั่วคราว การส่งคืน Result.retry() จะบอกให้ WorkManager ลองใหม่ในภายหลังโดยใช้นโยบายหน่วงเวลา คุณจึงไม่ต้องเขียนตรรกะสำหรับการลองใหม่เอง

การเพิ่มส่วนอ้างอิง

เพิ่มอาร์ติแฟกต์ขณะทำงานของ WorkManager (พร้อมการรองรับคอร์รูทีนจาก KTX) ลงในไฟล์ Gradle ของโมดูล

dependencies {
    implementation("androidx.work:work-runtime-ktx:2.9.1")
}

แนวคิดในภาพรวม

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

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความเข้าใจเกี่ยวกับเวลาที่ควรใช้ WorkManager

สรุปทบทวน

คุณได้เรียนรู้จุดประสงค์ของ WorkManager ดังนี้:

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

ถัดไป: การสร้าง Worker

คำถามที่พบบ่อย

บทเรียน “เมื่อใดควรใช้ WorkManager” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “เมื่อใดควรใช้ WorkManager” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Android Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Android Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “เมื่อใดควรใช้ WorkManager”

เลือกเครื่องมือทำงานเบื้องหลังที่เหมาะสม คุณปฏิบัติ Android Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Android Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Android Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “เมื่อใดควรใช้ WorkManager” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Android Academy นี้ได้ไหม

ได้ บทเรียน Android Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. เมื่อใดควรใช้ WorkManager
  2. การสร้าง Worker
  3. ข้อจำกัดและการกำหนดเวลา
  4. งานแบบเป็นช่วงและแบบต่อเนื่อง
← กลับไปที่ Android Academy