เริ่มตั้งแต่ Android 14 (API ระดับ 34) คุณต้องประกาศ
ประเภทบริการที่เหมาะสมสำหรับบริการที่ทำงานอยู่เบื้องหน้าแต่ละรายการ ซึ่งหมายความว่าคุณต้องประกาศประเภทบริการในไฟล์ Manifest ของแอป และขอสิทธิ์บริการที่ทำงานอยู่เบื้องหน้าที่เหมาะสมกับประเภทดังกล่าวด้วย (นอกเหนือจากการขอสิทธิ์ FOREGROUND_SERVICE
) นอกจากนี้ คุณอาจต้องขอสิทธิ์รันไทม์ก่อนเปิดตัวบริการ ทั้งนี้ขึ้นอยู่กับประเภทบริการที่ทำงานอยู่เบื้องหน้า
กล้อง
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
camera
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_CAMERA
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_CAMERA
- ข้อกำหนดเบื้องต้นของรันไทม์
ขอและรับสิทธิ์แบบรันไทม์
CAMERA
- คำอธิบาย
การเข้าถึงกล้องจากเบื้องหลังอย่างต่อเนื่อง เช่น แอปวิดีโอแชท ที่อนุญาตให้ทำงานหลายอย่างพร้อมกันได้
อุปกรณ์ที่เชื่อมต่อ
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ในส่วน
android:foregroundServiceType
connectedDevice
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_CONNECTED_DEVICE
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE
- ข้อกําหนดเบื้องต้นของรันไทม์
เงื่อนไขต่อไปนี้อย่างน้อย 1 ข้อจะต้องเป็นจริง
ประกาศสิทธิ์ต่อไปนี้อย่างน้อย 1 รายการในไฟล์ Manifest
ขอและได้รับสิทธิ์รันไทม์ต่อไปนี้อย่างน้อย 1 สิทธิ์
- คำอธิบาย
การโต้ตอบกับอุปกรณ์ภายนอกที่ต้องใช้การเชื่อมต่อบลูทูธ, NFC, IR, USB หรือเครือข่าย
- ทางเลือก
หากแอปของคุณต้องโอนข้อมูลไปยังอุปกรณ์ภายนอกอย่างต่อเนื่อง ให้ลองใช้เครื่องมือจัดการอุปกรณ์ที่ใช้ร่วมกันแทน ใช้ companion device presence API เพื่อช่วยให้คุณแอปทำงานต่อไปได้ขณะที่อุปกรณ์ที่ใช้ร่วมกันอยู่ในระยะสัญญาณ
หากแอปของคุณต้องสแกนหาอุปกรณ์บลูทูธ ให้ลองใช้ Bluetooth Scan API แทน
การซิงค์ข้อมูล
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
dataSync
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_DATA_SYNC
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_DATA_SYNC
- ข้อกำหนดเบื้องต้นของรันไทม์
- ไม่มี
- คำอธิบาย
การดำเนินการโอนข้อมูล เช่น การดำเนินการต่อไปนี้
- การอัปโหลดหรือดาวน์โหลดข้อมูล
- การดำเนินการสำรองและกู้คืนข้อมูล
- การดำเนินการนำเข้าหรือส่งออก
- ดึงข้อมูล
- การประมวลผลไฟล์ในเครื่อง
- โอนข้อมูลระหว่างอุปกรณ์กับระบบคลาวด์ผ่านเครือข่าย
- ทางเลือก
ดูข้อมูลโดยละเอียดได้ที่ทางเลือกแทนบริการที่ทำงานอยู่เบื้องหน้าสำหรับการซิงค์ข้อมูล
สุขภาพ
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ในส่วน
android:foregroundServiceType
health
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_HEALTH
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_HEALTH
- สิ่งที่ต้องดำเนินการก่อนสำหรับรันไทม์
เงื่อนไขต่อไปนี้อย่างน้อย 1 ข้อจะต้องเป็นจริง
ประกาศสิทธิ์
HIGH_SAMPLING_RATE_SENSORS
ในไฟล์ Manifestขอและได้รับสิทธิ์รันไทม์ต่อไปนี้อย่างน้อย 1 สิทธิ์
BODY_SENSORS
ใน API 35 และต่ำกว่าREAD_HEART_RATE
READ_SKIN_TEMPERATURE
READ_OXYGEN_SATURATION
ACTIVITY_RECOGNITION
- คำอธิบาย
กรณีการใช้งานที่ทำงานต่อเนื่องเพื่อรองรับแอปในหมวดหมู่ฟิตเนส เช่น อุปกรณ์ติดตามการออกกำลังกาย
ตำแหน่ง
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ในส่วน
android:foregroundServiceType
location
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_LOCATION
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_LOCATION
- ข้อกําหนดเบื้องต้นของรันไทม์
ผู้ใช้ต้องเปิดใช้บริการตำแหน่งและแอปต้องได้รับสิทธิ์รันไทม์อย่างน้อย 1 รายการต่อไปนี้
- คำอธิบาย
กรณีการใช้งานที่ทำงานต่อเนื่องซึ่งต้องใช้สิทธิ์เข้าถึงตำแหน่ง เช่น การนำทางและการแชร์ตำแหน่ง
- ทางเลือก
หากต้องการให้แอปทริกเกอร์เมื่อผู้ใช้ไปถึงสถานที่ที่เฉพาะเจาะจง ให้ลองใช้ Geofence API แทน
สื่อ
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
mediaPlayback
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_MEDIA_PLAYBACK
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK
- ข้อกำหนดเบื้องต้นของรันไทม์
- ไม่มี
- คำอธิบาย
เล่นเสียงหรือวิดีโออย่างต่อเนื่องจากเบื้องหลัง รองรับฟังก์ชันการบันทึกวิดีโอดิจิทัล (DVR) ใน Android TV
- ทางเลือก
หากคุณแสดงวิดีโอแบบภาพซ้อนภาพ ให้ใช้โหมดภาพซ้อนภาพ
กำลังประมวลผลสื่อ
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ในส่วน
android:foregroundServiceType
mediaProcessing
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_MEDIA_PROCESSING
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
- ข้อกําหนดเบื้องต้นของรันไทม์
- ไม่มี
- คำอธิบาย
บริการสําหรับดําเนินการกับชิ้นงานสื่อที่ใช้เวลานาน เช่น การเปลี่ยนรูปแบบสื่อ ระบบอนุญาตให้บริการนี้ทำงานได้ในช่วงเวลาที่จำกัด โดยปกติแล้วขีดจำกัดเวลานี้จะเท่ากับ 6 ชั่วโมงจาก 24 ชั่วโมง (ขีดจำกัดนี้จะแชร์โดย
mediaProcessing
บริการที่ทำงานอยู่เบื้องหน้าทั้งหมดของแอป)แอปของคุณควรหยุดบริการประมวลผลสื่อด้วยตนเองในสถานการณ์ต่อไปนี้
- เมื่อการดำเนินการเปลี่ยนรูปแบบเสร็จสิ้นหรือถึงสถานะไม่สำเร็จ ให้เรียกใช้บริการ
Service.stopForeground()
และService.stopSelf()
เพื่อหยุดบริการโดยสมบูรณ์
- เมื่อการดำเนินการเปลี่ยนรูปแบบเสร็จสิ้นหรือถึงสถานะไม่สำเร็จ ให้เรียกใช้บริการ
หากถึงระยะเวลาหมดเวลา ระบบจะเรียกใช้เมธอด
Service.onTimeout(int, int)
ของบริการ ขณะนี้บริการมีเวลา 2-3 วินาทีในการเรียกService.stopSelf()
หากบริการไม่ได้เรียกใช้Service.stopSelf()
ระบบจะแสดง ANR พร้อมข้อความแสดงข้อผิดพลาด "บริการที่ทำงานอยู่เบื้องหน้าของ <fgs_type> ไม่ได้หยุดภายในระยะหมดเวลา: <component_name>"หมายเหตุ:
Service.onTimeout(int, int)
ไม่พร้อมใช้งานใน Android 14 หรือต่ำกว่า ในอุปกรณ์ที่ใช้เวอร์ชันดังกล่าว หากบริการประมวลผลสื่อถึงระยะเวลาหมดเวลา ระบบจะแคชแอปทันที ด้วยเหตุนี้ แอปของคุณจึงไม่ควรรอรับการแจ้งเตือนการหมดเวลา แต่ควรสิ้นสุดบริการที่ทำงานอยู่เบื้องหน้าหรือเปลี่ยนเป็นบริการที่ทำงานอยู่เบื้องหลังโดยเร็วที่สุด
การฉายภาพสื่อ
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
mediaProjection
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_MEDIA_PROJECTION
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION
- ข้อกำหนดเบื้องต้นของรันไทม์
เรียกใช้เมธอด
createScreenCaptureIntent()
ก่อนเริ่ม บริการที่ทำงานอยู่เบื้องหน้า การดำเนินการนี้จะแสดงการแจ้งเตือนสิทธิ์แก่ผู้ใช้ ผู้ใช้ต้องให้สิทธิ์ก่อนที่คุณจะสร้างบริการได้หลังจากสร้าง Foreground Service แล้ว คุณจะเรียกใช้
MediaProjectionManager.getMediaProjection()
ได้- คำอธิบาย
ฉายเนื้อหาไปยังจอแสดงผลที่ไม่ใช่อุปกรณ์หลักหรืออุปกรณ์ภายนอกโดยใช้
MediaProjection
API เนื้อหานี้ไม่จำเป็นต้องเป็นเนื้อหาสื่อ เท่านั้น- ทางเลือก
หากต้องการสตรีมสื่อไปยังอุปกรณ์อื่น ให้ใช้ Google Cast SDK
ไมโครโฟน
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
microphone
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_MICROPHONE
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_MICROPHONE
- ข้อกำหนดเบื้องต้นของรันไทม์
ขอและรับสิทธิ์รันไทม์
RECORD_AUDIO
- คำอธิบาย
บันทึกเสียงจากไมโครโฟนอย่างต่อเนื่องจากเบื้องหลัง เช่น เครื่องบันทึกเสียงหรือ แอปการสื่อสาร
การโทร
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
phoneCall
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_PHONE_CALL
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_PHONE_CALL
- ข้อกำหนดเบื้องต้นของรันไทม์
เงื่อนไขต่อไปนี้อย่างน้อย 1 ข้อต้องเป็นจริง
- แอปได้ประกาศสิทธิ์
MANAGE_OWN_CALLS
ในไฟล์ Manifest
- แอปได้ประกาศสิทธิ์
- แอปเป็นแอปโทรศัพท์เริ่มต้นผ่านบทบาท
ROLE_DIALER
- แอปเป็นแอปโทรศัพท์เริ่มต้นผ่านบทบาท
- คำอธิบาย
ต่อสายที่กำลังสนทนาโดยใช้ API ของ
ConnectionService
- ทางเลือก
หากต้องการโทรศัพท์ วิดีโอ หรือ VoIP ให้ลองใช้ไลบรารี
android.telecom
ลองใช้
CallScreeningService
เพื่อคัดกรองสายเรียกเข้า
การรับส่งข้อความระยะไกล
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ในส่วน
android:foregroundServiceType
remoteMessaging
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_REMOTE_MESSAGING
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_REMOTE_MESSAGING
- ข้อกําหนดเบื้องต้นของรันไทม์
- ไม่มี
- คำอธิบาย
- โอน SMS จากอุปกรณ์เครื่องหนึ่งไปยังอีกเครื่อง ช่วยเหลืองานการรับส่งข้อความของผู้ใช้ให้มีความต่อเนื่องเมื่อเปลี่ยนอุปกรณ์
บริการระยะสั้น
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ในส่วน
android:foregroundServiceType
shortService
- สิทธิ์ในการประกาศในไฟล์ Manifest
- ไม่มี
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_SHORT_SERVICE
- ข้อกําหนดเบื้องต้นของรันไทม์
- ไม่มี
- คำอธิบาย
ทำงานที่สำคัญซึ่งต้องดำเนินการให้เสร็จโดยไม่มีการหยุดชะงักหรือเลื่อนออกไปได้อย่างรวดเร็ว
ประเภทนี้มีเอกลักษณ์เฉพาะตัวดังนี้
- ทำงานได้เพียงระยะเวลาสั้นๆ (ประมาณ 3 นาที)
- ไม่รองรับบริการที่ทำงานอยู่เบื้องหน้าแบบติดหนึบ
- เริ่มบริการอื่นๆ ที่ทำงานอยู่เบื้องหน้าไม่ได้
- ไม่ต้องมีสิทธิ์เฉพาะประเภท แต่ยังคงต้องใช้สิทธิ์
FOREGROUND_SERVICE
shortService
จะเปลี่ยนเป็นบริการประเภทอื่นได้ก็ต่อเมื่อแอปมีสิทธิ์เริ่มบริการที่ทำงานอยู่เบื้องหน้าใหม่- บริการที่ทำงานอยู่เบื้องหน้าสามารถเปลี่ยนประเภทเป็น
shortService
ได้ทุกเมื่อ ซึ่งจะเป็นจุดเริ่มต้นของระยะเวลาหมดเวลา
การหมดเวลาสําหรับ shortService จะเริ่มนับตั้งแต่ที่มีการเรียกใช้
Service.startForeground()
แอปควรเรียกใช้Service.stopSelf()
หรือService.stopForeground()
ก่อนที่จะเกิดเวลาหมด ไม่เช่นนั้น ระบบจะเรียกService.onTimeout()
ใหม่ ซึ่งแอปจะมีเวลาสั้นๆ ในการเรียกstopSelf()
หรือstopForeground()
เพื่อหยุดให้บริการหลังจากเรียก
Service.onTimeout()
ไม่นาน แอปจะเข้าสู่สถานะแคชและระบบจะไม่ถือว่าแอปอยู่ในเบื้องหน้าอีกต่อไป เว้นแต่ผู้ใช้จะโต้ตอบกับแอปอยู่ ไม่นานหลังจากที่แอปแคชและบริการยังไม่หยุดทำงาน แอปจะได้รับ ANR ข้อความ ANRP พูดถึงFOREGROUND_SERVICE_TYPE_SHORT_SERVICE
ด้วยเหตุนี้ การใช้Service.onTimeout()
การเรียกกลับจึงถือเป็นแนวทางปฏิบัติแนะนำฟีเจอร์ติดต่อกลับ
Service.onTimeout()
ไม่มีให้บริการใน Android 13 และต่ำกว่า หากบริการเดียวกันทำงานในอุปกรณ์ดังกล่าว บริการจะไม่หมดเวลาและจะไม่เกิด ANR ตรวจสอบว่าบริการหยุดทำงานทันทีที่ประมวลผลงานเสร็จ แม้ว่าจะยังไม่ได้รับService.onTimeout()
callback ก็ตามโปรดทราบว่าหากไม่ปฏิบัติตามการหมดเวลาของ
shortService
แอปจะแสดง ANR แม้ว่าจะมีบริการที่ทำงานอยู่เบื้องหน้าอื่นๆ ที่ถูกต้องหรือกระบวนการอื่นๆ ของวงจรชีวิตของแอปที่ทำงานอยู่ก็ตามหากผู้ใช้มองเห็นแอปหรือแอปเป็นไปตามข้อยกเว้นข้อใดข้อหนึ่งซึ่งอนุญาตให้เริ่มบริการที่ทำงานอยู่เบื้องหน้าจากเบื้องหลังได้ การเรียกใช้
Service.StartForeground()
อีกครั้งด้วยพารามิเตอร์FOREGROUND_SERVICE_TYPE_SHORT_SERVICE
จะขยายเวลาหมดเวลาอีก 3 นาที หากผู้ใช้ไม่เห็นแอปและไม่เป็นไปตามข้อยกเว้นข้อใดข้อหนึ่ง การพยายามเริ่มบริการที่ทำงานอยู่เบื้องหน้าอีกรายการหนึ่งไม่ว่าประเภทใดก็ตามจะทำให้เกิดForegroundServiceStartNotAllowedException
หากผู้ใช้ปิดใช้การเพิ่มประสิทธิภาพแบตเตอรี่สำหรับแอปของคุณ แอปจะยังคงได้รับผลกระทบจากการหมดเวลาของ FGS บริการระยะสั้น
หากคุณเริ่มบริการที่ทำงานอยู่เบื้องหน้าซึ่งมีประเภท
shortService
และประเภทบริการที่ทำงานอยู่เบื้องหน้าอื่น ระบบจะไม่สนใจการประกาศประเภทshortService
อย่างไรก็ตาม บริการดังกล่าวยังคงต้องเป็นไปตามข้อกําหนดเบื้องต้นของประเภทอื่นๆ ที่ประกาศไว้ ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบเกี่ยวกับบริการที่ทำงานอยู่เบื้องหน้า
การใช้งานพิเศษ
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
specialUse
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_SPECIAL_USE
- ค่าคงที่ที่จะส่งผ่านไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_SPECIAL_USE
- ข้อกำหนดเบื้องต้นของรันไทม์
- ไม่มี
- คำอธิบาย
ครอบคลุมกรณีการใช้งานบริการที่ทำงานอยู่เบื้องหน้าที่ถูกต้องซึ่งไม่ครอบคลุมในกรณีการใช้งานอื่น ประเภทบริการที่ทำงานอยู่เบื้องหน้า
นอกจากการประกาศ
FOREGROUND_SERVICE_TYPE_SPECIAL_USE
ประเภทบริการที่ทำงานอยู่เบื้องหน้า นักพัฒนาแอปควรประกาศกรณีการใช้งานใน ไฟล์ Manifest ซึ่งวิธีการคือการระบุองค์ประกอบ<property>
ภายในองค์ประกอบ องค์ประกอบ<service>
ค่าเหล่านี้และกรณีการใช้งานที่เกี่ยวข้อง ตรวจสอบเมื่อคุณส่งแอปใน Google Play Console การใช้งาน กรณีที่คุณใส่นั้นอยู่ในรูปแบบอิสระ และควรตรวจสอบว่าได้ใส่ เพื่อช่วยให้ผู้ตรวจสอบทราบเหตุผลที่คุณต้องใช้specialUse
ประเภท<service android:name="fooService" android:foregroundServiceType="specialUse"> <property android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" android:value="explanation_for_special_use"/> </service>
ได้รับการยกเว้นจากระบบ
- ประเภทบริการที่ทำงานอยู่เบื้องหน้าที่จะประกาศในไฟล์ Manifest ภายใต้
android:foregroundServiceType
systemExempted
- สิทธิ์ในการประกาศในไฟล์ Manifest
FOREGROUND_SERVICE_SYSTEM_EXEMPTED
- ค่าคงที่ที่จะส่งไปยัง
startForeground()
FOREGROUND_SERVICE_TYPE_SYSTEM_EXEMPTED
- ข้อกำหนดเบื้องต้นของรันไทม์
- ไม่มี
- คำอธิบาย
สงวนไว้สำหรับแอปพลิเคชันของระบบและการผสานรวมระบบที่เฉพาะเจาะจง เพื่อให้ใช้บริการที่ทำงานอยู่เบื้องหน้าต่อไปได้
หากต้องการใช้ประเภทนี้ แอปต้องมีคุณสมบัติตรงตามเกณฑ์ต่อไปนี้อย่างน้อย 1 ข้อ
- อุปกรณ์อยู่ในสถานะโหมดสาธิต
- แอปเป็นเจ้าของอุปกรณ์
- แอปเป็นเจ้าของ Profiler
- แอปความปลอดภัยที่มีบทบาท
ROLE_EMERGENCY
- แอปผู้ดูแลระบบอุปกรณ์
- แอปที่มีสิทธิ์
SCHEDULE_EXACT_ALARM
หรือUSE_EXACT_ALARM
แอป VPN (กำหนดค่าโดยใช้การตั้งค่า > เครือข่ายและอินเทอร์เน็ต > VPN)
มิเช่นนั้น การประกาศประเภทนี้จะทำให้ระบบแสดง
ForegroundServiceTypeNotAllowedException
การบังคับใช้นโยบายของ Google Play สำหรับการใช้ประเภทบริการที่ทำงานอยู่เบื้องหน้า
หากแอปกำหนดเป้าหมายเป็น Android 14 ขึ้นไป คุณจะต้องประกาศประเภทบริการที่ทำงานอยู่เบื้องหน้าของแอปในหน้าเนื้อหาแอปของ Play Console (นโยบาย > เนื้อหาแอป) ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีประกาศประเภทบริการที่ทำงานอยู่เบื้องหน้าใน Play Console ได้ที่การทำความเข้าใจบริการที่ทำงานอยู่เบื้องหน้าและข้อกำหนดของ Intent แบบเต็มหน้าจอ