Significant Location Change — คืออะไร ทริกเกอร์ และกลไกการทำงาน

ผู้แต่ง: IT Sectr เผยแพร่เมื่อ: 2026-03-28 เวลาอ่าน: 10 นาที

Significant Location Change (SLC) คือบริการ iOS สำหรับตรวจสอบการเคลื่อนที่ขนาดใหญ่ของอุปกรณ์ ซึ่งจะแจ้งให้แอปพลิเคชันทราบเฉพาะเมื่อมีการเปลี่ยนแปลงพิกัดทางภูมิศาสตร์อย่างมีนัยสำคัญ แตกต่างจากการติดตาม GPS แบบเรียลไทม์ SLC ใช้เสาสัญญาณโทรศัพท์มือถือเพื่อระบุตำแหน่ง ซึ่งช่วยให้ใช้พลังงานน้อยที่สุด ตามเอกสารประกอบ Apple Developer, 2025, Significant Location Change ช่วยให้แอปพลิเคชันได้รับการอัปเดตตำแหน่งโดยไม่ต้องใช้ GPS ทำงานอย่างต่อเนื่อง ประหยัดแบตเตอรี่ได้ถึง 90% เมื่อเทียบกับการติดตามอย่างต่อเนื่อง

ประเด็นสำคัญ

  • SLC — การตรวจสอบการเปลี่ยนแปลงตำแหน่งอย่างมีนัยสำคัญโดยใช้เสาสัญญาณโทรศัพท์มือถือ
  • การใช้พลังงาน — ประหยัดแบตเตอรี่ได้ถึง 90% เมื่อเทียบกับการติดตาม GPS อย่างต่อเนื่อง
  • ทริกเกอร์ — การเปลี่ยนเสาสัญญาณ การข้ามขอบเขตคลัสเตอร์ การเปิด GPS
  • ข้อจำกัด — ระยะทางการอัปเดตต่ำสุด ~500 เมตร ความแม่นยำสูงสุดหนึ่งกิโลเมตร
  • iOS 13+ — เพิ่มสิทธิ์ Always และข้อจำกัดการเริ่มทำงานในพื้นหลัง

Significant Location Change คืออะไร

Significant Location Change (SLC) คือบริการระบุตำแหน่งที่ประหยัดพลังงานของ iOS ซึ่งสร้างไว้ในเฟรมเวิร์ก Core Location ออกแบบมาสำหรับแอปพลิเคชันที่ต้องการติดตามการเคลื่อนที่ขนาดใหญ่ของผู้ใช้โดยไม่ต้องใช้โมดูล GPS อย่างต่อเนื่อง SLC จะทำงานโดยอัตโนมัติเมื่อเปลี่ยนระหว่างเซลล์สัญญาณโทรศัพท์มือถือและแจ้งให้แอปพลิเคชันทราบผ่านดีลิเกต CLLocationManagerDelegate ด้วยเมธอด didUpdateLocations

แตกต่างจาก การติดตามระดับ GPS (มาตรฐาน startUpdatingLocation) SLC ไม่ต้องการการทำงานอย่างต่อเนื่องของโปรเซสเซอร์และชิป GPS iOS ใช้สัญญาณจากเสาสัญญาณโทรศัพท์มือถือเพื่อระบุตำแหน่งโดยประมาณและจะเปิดแอปพลิเคชันเมื่อพบความแตกต่างอย่างมีนัยสำคัญของพิกัดเท่านั้น ซึ่งช่วยให้แอปพลิเคชัน “หลับ” ระหว่างการอัปเดต ใช้พลังงานน้อยที่สุด

SLC พร้อมใช้งานบนอุปกรณ์ทั้งหมดที่มีโมดูลเซลลูลาร์ตั้งแต่ iOS 5 เป็นต้นไป บน iPod Touch และ iPad Wi-Fi Only บริการนี้ไม่พร้อมใช้งานเนื่องจากใช้เสาสัญญาณโทรศัพท์มือถือในการระบุพิกัด Core Location จะตัดสินใจโดยอัตโนมัติว่าเหตุการณ์ใดถือว่ามีนัยสำคัญ — นักพัฒนาไม่สามารถปรับความไวของ SLC หรือระบุระยะทางต่ำสุดสำหรับทริกเกอร์ได้

SLC เหมาะกับแอปพลิเคชันใดบ้าง

SLC เหมาะอย่างยิ่งสำหรับแอปพลิเคชันที่ไม่ต้องการความแม่นยำของตำแหน่งสูง: ตัวติดตามสภาพอากาศ บริการจัดส่ง แอปพลิเคชันค้นหาสิ่งของใกล้เคียง การวิเคราะห์สถานที่ที่เยี่ยมชม SLC ยังถูกใช้โดยระบบ iOS เพื่อเปิดใช้งานการกำหนดขอบเขตทางภูมิศาสตร์ (Geofencing) ในโหมดประหยัดพลังงาน แอปพลิเคชันนำทางต้องการ การติดตาม GPS ที่แม่นยำกว่า

Significant Location Change ทำงานอย่างไร

Significant Location Change ทำงานบนพื้นฐานการวิเคราะห์ตัวระบุเสาสัญญาณโทรศัพท์มือถือ (Cell ID) ที่อุปกรณ์ได้รับเมื่อเชื่อมต่อเครือข่าย iOS จะรักษาฐานข้อมูลพิกัดของเสาสัญญาณและสามารถระบุตำแหน่งโดยประมาณได้โดยไม่ต้องเปิด GPS เมื่ออุปกรณ์เปลี่ยนไปยังเสาสัญญาณใหม่ ระบบจะเปรียบเทียบตำแหน่งใหม่และตำแหน่งก่อนหน้า และหากความแตกต่างมีนัยสำคัญ ก็จะเปิดแอปพลิเคชันเพื่อประมวลผลเหตุการณ์

ระบบใช้ วิธีคลัสเตอร์: พื้นที่ทางภูมิศาสตร์ถูกแบ่งออกเป็นคลัสเตอร์ที่มีรัศมีที่กำหนด SLC จะสร้างเหตุการณ์เฉพาะเมื่อข้ามขอบเขตคลัสเตอร์เท่านั้น ไม่ใช่ทุกการเคลื่อนที่เล็กๆ ภายในคลัสเตอร์ ซึ่งป้องกันการเรียกแอปพลิเคชันถาโถมเมื่อเคลื่อนที่ภายในพื้นที่ครอบคลุมเดียวกัน (เช่น ในอาคารหรือย่าน) ความแม่นยำ ของ SLC อยู่ระหว่าง 500 เมตรถึงหลายกิโลเมตร ขึ้นอยู่กับความหนาแน่นของเสาสัญญาณโทรศัพท์มือถือ

เมื่อ iOS ตรวจจับการเปลี่ยนแปลงที่มีนัยสำคัญ มันจะปลุกแอปพลิเคชันจากสถานะพื้นหลัง (หากกำลังทำงานอยู่) และส่งเหตุการณ์ไปยังดีลิเกต Core Location แอปพลิเคชันมี เวลาสั้น ในการประมวลผล (ประมาณ 10–30 วินาทีของเวลาพื้นหลัง) — ในช่วงเวลานี้ต้องประมวลผลพิกัดและหากจำเป็น ให้กำหนดการอัปเดตที่แม่นยำยิ่งขึ้นผ่าน GPS

การเปิดแอปพลิเคชันจากพื้นหลัง

SLC มีสิทธิ์ ปลุกแอปพลิเคชัน จากสถานะ Suspended หรือ Background หากแอปพลิเคชันถูกระบบยุติเนื่องจากหน่วยความจำไม่เพียงพอ SLC จะเริ่มต้นใหม่ (relaunch) ในพื้นหลัง สำหรับสิ่งนี้ แอปพลิเคชันต้องลงทะเบียนสำหรับ UIApplication.LaunchOptionsKey.location ในเมธอด didFinishLaunchingWithOptions หลังจากประมวลผลเหตุการณ์ ระบบสามารถทำให้แอปพลิเคชันกลับสู่สถานะ Suspended ได้

ทริกเกอร์ของ Significant Location Change

ทริกเกอร์ ของ SLC ถูกกำหนดโดยระบบ iOS เท่านั้น — นักพัฒนาไม่สามารถมีอิทธิพลในทางโปรแกรมว่าการเปลี่ยนแปลงพิกัดใดควรถือว่า “มีนัยสำคัญ” อย่างไรก็ตาม มีสถานการณ์ที่บันทึกไว้ซึ่ง SLC สร้างเหตุการณ์ที่รับประกันได้ การทำความเข้าใจทริกเกอร์เหล่านี้ช่วยนักออกแบบพฤติกรรมแอปพลิเคชันที่ถูกต้อง

การเปลี่ยนเสาสัญญาณโทรศัพท์มือถือ

Cell tower change — ทริกเกอร์หลักของ SLC เมื่ออุปกรณ์สลับระหว่างเสาสัญญาณโทรศัพท์มือถือ (เมื่อเคลื่อนที่ในเมือง บนทางหลวง) ระบบจะตรวจสอบว่าพิกัดระหว่างเสาเก่าและใหม่เปลี่ยนแปลงเพียงพอหรือไม่ ถ้าใช่ จะสร้างเหตุการณ์ ในสภาพเมืองที่มีเครือข่ายเสาสัญญาณหนาแน่น SLC สามารถทริกเกอร์ทุก 1–3 กิโลเมตร

การเปิด GPS โดยแอปพลิเคชันอื่น

หากแอปพลิเคชันอื่นหรือบริการระบบ (เช่น “ค้นหา iPhone ของฉัน” การนำทาง) เปิด โมดูล GPS SLC ก็สามารถรับการอัปเดตพิกัดที่แม่นยำได้ นี่เป็นผลข้างเคียง: GPS ระบุตำแหน่งที่แน่นอนและ iOS ส่งไปยังแอปพลิเคชันทั้งหมดที่ลงทะเบียน SLC อย่างไรก็ตาม ไม่สามารถพึ่งพาทริกเกอร์นี้ได้ — ไม่รับประกัน

การเปลี่ยนระหว่างเครือข่าย Wi-Fi

แม้ว่า SLC จะไม่ใช้ Wi-Fi โดยตรง การเปลี่ยน เครือข่าย Wi-Fi สามารถทำให้เกิดเหตุการณ์ทางอ้อมได้หากอุปกรณ์ได้รับพิกัดใหม่ผ่าน Apple Location Service (ตำแหน่งผ่านฐานข้อมูล Wi-Fi) iOS จะแฮชพิกัดของจุดเข้าใช้งาน Wi-Fi และใช้เพื่อปรับปรุงตำแหน่งระหว่างการเปลี่ยนเสาสัญญาณ

ทริกเกอร์การรับประกันความล่าช้าความแม่นยำ
การเปลี่ยนเสาสัญญาณสูง1–30 วินาที500 ม. – 3 กม.
GPS ของแอปอื่นต่ำทันทีสูงสุด 10 ม.
การเปลี่ยน Wi-Fiปานกลางสูงสุด 5 นาที100–500 ม.

SLC เทียบกับบริการระบุตำแหน่ง iOS อื่นๆ

iOS มีกลไกหลายอย่างในการรับตำแหน่ง แต่ละอย่างมีความแม่นยำ การใช้พลังงาน และสถานการณ์การใช้งานของตัวเอง Significant Location Change อยู่ระหว่างการประมาณคร่าวๆ ผ่านเสาสัญญาณและการติดตาม GPS ที่แม่นยำ โดยเสนอทางเลือกที่สมดุลสำหรับแอปพลิเคชันที่ไม่ต้องการความแม่นยำสูงแบบเรียลไทม์

Standard Location Service

Standard Location Service (startUpdatingLocation()) ใช้ GPS, Wi-Fi และเสาสัญญาณโทรศัพท์มือถือเพื่อระบุพิกัดด้วยความแม่นยำสูงสุด ความแม่นยำสูงถึง 10 เมตร แต่การใช้พลังงานสูง — โมดูล GPS ทำงานอย่างต่อเนื่อง เหมาะสำหรับการนำทาง ตัวติดตามฟิตเนส แอปพลิเคชัน AR ในทางตรงกันข้าม SLC ไม่ใช้ GPS อย่างต่อเนื่องและมีความแม่นยำ 500 เมตรหรือต่ำกว่า

Region Monitoring (Geofencing)

Region Monitoring ติดตามการเข้าและออกจากพื้นที่ทางภูมิศาสตร์ที่กำหนด แตกต่างจาก SLC นักพัฒนากำหนดขอบเขตของพื้นที่ด้วยตนเอง (รัศมีจาก 100 เมตร) Geofencing ใช้ SLC เป็นกลไกเสริม — ระบบระบุตำแหน่งโดยประมาณผ่าน SLC ก่อน จากนั้นเปิด GPS เพื่อตรวจจับการเข้า/ออกจากพื้นที่อย่างแม่นยำ จำนวนสูงสุด ของพื้นที่ที่สามารถติดตามได้คือ 20

Visit Monitoring

Visit Monitoring เป็นบริการเฉพาะทางของ iOS 8+ ที่ติดตามการเยี่ยมชมสถานที่ (การมาถึงและการออกเดินทาง) มันใช้การผสมผสานของ SLC และสัญญาณอื่นๆ เพื่อระบุว่าผู้ใช้หยุดที่ไหนสักแห่งและเมื่อใดออกไป Visit Monitoring ประหยัดพลังงานมากกว่า SLC เนื่องจากสร้างเหตุการณ์น้อยกว่าและใช้การเรียนรู้ของเครื่องบนอุปกรณ์

บริการความแม่นยำการใช้พลังงานพื้นหลัง
SLC500 ม. – 3 กม.ต่ำมากใช่
GPS มาตรฐานสูงสุด 10 ม.สูงต้องได้รับสิทธิ์
Geofencingจาก 100 ม.ต่ำใช่
Visit Monitoringสูงสุด 100 ม.ต่ำมากใช่

การใช้พลังงานและแบตเตอรี่

SLC เป็นวิธีประหยัดพลังงานมากที่สุดในการรับตำแหน่งบน iOS ยกเว้น Visit Monitoring ตามข้อมูลของ Apple SLC ใช้พลังงานประมาณ 0.1–0.5% ของแบตเตอรี่ต่อชั่วโมง ในสถานการณ์การใช้งานทั่วไป ในขณะที่การติดตาม GPS อย่างต่อเนื่องอาจใช้ 5–10% ต่อชั่วโมง การประหยัดเกิดขึ้นเพราะโมดูล GPS เปิดเพียงช่วงสั้นๆ เพื่อยืนยันพิกัดในแต่ละเหตุการณ์

iOS จัดการการใช้พลังงานของ SLC ผ่าน การเพิ่มประสิทธิภาพแบตเตอรี่ หากระบบสังเกตว่าแอปพลิเคชันกำลังประมวลผลเหตุการณ์ SLC บ่อยเกินไป (เช่น เมื่อเดินทางด้วยรถไฟที่มีการเปลี่ยนเสาสัญญาณบ่อยครั้งสร้างเหตุการณ์จำนวนมาก) iOS อาจลดความถี่ของการแจ้งเตือนชั่วคราว นี่เป็นกลไกอัตโนมัติที่นักพัฒนาไม่สามารถปิดได้

ในทุกๆ รุ่นหลักของ iOS Apple ทำให้การเข้าถึงตำแหน่งในพื้นหลังเข้มงวดขึ้น ตั้งแต่ iOS 13 เป็นต้นไป ไดอะล็อกขออนุญาตใช้ตำแหน่งในพื้นหลังเปลี่ยนไป: ผู้ใช้ต้องเลือก “ตลอดเวลา” (Always) อย่างชัดเจน ไม่ใช่แค่ “ขณะใช้” (While Using) หากไม่มีสิทธิ์ Always SLC จะไม่ทำงานเมื่อแอปพลิเคชันอยู่ในพื้นหลังหรือถูกระบบยุติ

  • SLC — 0.1–0.5% แบตเตอรี่ต่อชั่วโมง; GPS — 5–10% ต่อชั่วโมงเมื่อใช้อย่างต่อเนื่อง
  • iOS 13+ — ต้องมีสิทธิ์ Always สำหรับ SLC ในพื้นหลัง
  • การเพิ่มประสิทธิภาพ — iOS ลดความถี่ SLC โดยอัตโนมัติเมื่อมีการเคลื่อนไหว
  • การประมวลผลแบบกลุ่ม — เหตุการณ์ SLC หลายรายการสามารถรวมเป็นการแจ้งเตือนเดียว

การนำไปใช้ใน Swift

มาดูตัวอย่างการนำ Significant Location Change ไปใช้อย่างสมบูรณ์ใน Swift ตัวอย่างรวมถึงการตั้งค่า CLLocationManager การขอสิทธิ์ Always การเริ่มการตรวจสอบ การประมวลผลเหตุการณ์ และการสนับสนุนการเริ่มต้นใหม่ของแอปพลิเคชันหลังจากถูกระบบยุติ โค้ดใช้ Swift สมัยใหม่กับ async/await สำหรับการประมวลผลพิกัดและงานพื้นหลังผ่าน BGTaskScheduler

swift
import CoreLocation
import UIKit

class LocationManager: NSObject, CLLocationManagerDelegate {

    private let manager = CLLocationManager()

    override init() {
        super.init()
        manager.delegate = self
        manager.pausesLocationUpdatesAutomatically = true
        manager.desiredAccuracy = kCLLocationAccuracyThreeKilometers
    }

    func requestAlwaysAuthorization() {
        manager.requestAlwaysAuthorization()
    }

    func startSignificantLocationUpdates() {
        manager.startMonitoringSignificantLocationChanges()
    }

    func locationManager(_ manager: CLLocationManager,
                           didUpdateLocations locations: [CLLocation]) {
        guard let location = locations.last else { return }
        Task.detached {
            await LocationProcessor.handleLocationUpdate(location)
        }
    }

    func locationManager(_ manager: CLLocationManager,
                           didFailWithError error: Error) {
        Logger.log("SLC error: \(error.localizedDescription)")
    }
}

การจัดการการเริ่มต้นใหม่ของแอปพลิเคชัน

หากแอปพลิเคชันถูกระบบยุติ SLC จะเริ่มต้นใหม่โดยอัตโนมัติเมื่อมีเหตุการณ์ใหม่ ใน AppDelegate จำเป็นต้องเพิ่มการตรวจสอบการเริ่มต้นด้วยเหตุการณ์ตำแหน่งผ่าน UIApplication.LaunchOptionsKey.location หลังจากเริ่มต้นใหม่ แอปพลิเคชันต้องเริ่มต้น CLLocationManager และเรียก startMonitoringSignificantLocationChanges() เพื่อดำเนินการตรวจสอบต่อไป

swift
class AppDelegate: NSObject, UIApplicationDelegate {

    private let manager = LocationManager()

    func application(_ application: UIApplication,
                           didFinishLaunchingWithOptions launchOptions:
                               [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        if launchOptions?.keys.contains(.location) == true {
            Logger.log("App relaunched by SLC event")
        }
        manager.requestAlwaysAuthorization()
        manager.startSignificantLocationUpdates()
        return true
    }
}

แนวทางปฏิบัติที่ดีที่สุด

การใช้ Significant Location Change อย่างถูกต้องต้องมีความสมดุลระหว่างฟังก์ชันการทำงานและประสิทธิภาพพลังงาน Apple ควบคุมการเข้าถึงตำแหน่งในพื้นหลังอย่างเข้มงวด และแอปพลิเคชันที่ใช้ SLC ในทางที่ผิดหรือใช้โดยไม่มีความจำเป็นชัดเจนเสี่ยงต่อการถูกปฏิเสธเมื่อเผยแพร่บน App Store

อธิบายความจำเป็นของ SLC เสมอ

ใน Info.plist ต้องเพิ่มสตริงคำอธิบายเหตุผล: NSLocationAlwaysAndWhenInUseUsageDescription และ NSLocationWhenInUseUsageDescription คำอธิบายควรอธิบายอย่างชัดเจนว่าเหตุใดแอปพลิเคชันจึงต้องการการเข้าถึงตำแหน่งในพื้นหลัง App Review อ่านบรรทัดเหล่านี้และสามารถปฏิเสธแอปพลิเคชันได้หากเหตุผลไม่เพียงพอหรือถ้อยคำคลุมเครือ ตัวอย่าง: “แอปนี้ใช้ SLC เพื่ออัปเดตพยากรณ์อากาศเมื่อคุณเคลื่อนที่”

ประมวลผลเฉพาะเหตุการณ์ที่จำเป็น

อย่าเรียกใช้การดำเนินการที่มีค่าใช้จ่ายสูง (การระบุตำแหน่ง GPS คำขอเครือข่าย) ทุกเหตุการณ์ SLC SLC สามารถสร้างเหตุการณ์หลายสิบครั้งต่อชั่วโมงเมื่อเดินทางด้วยยานพาหนะ ใช้ debouncing: บันทึกเวลาของการอัปเดตสมบูรณ์ครั้งล่าสุดและข้ามการประมวลผลหากผ่านไปน้อยกว่า 5–10 นาทีจากการอัปเดตครั้งก่อน ซึ่งจะประหยัดแบตเตอรี่และปริมาณการใช้งานเครือข่าย

รวมกับ BGTaskScheduler

สำหรับการประมวลผลระยะยาวหลังจากเหตุการณ์ SLC ให้ใช้ BGTaskScheduler เมื่อแอปพลิเคชันได้รับเหตุการณ์ SLC มันสามารถกำหนดเวลางานพื้นหลังผ่าน BGProcessingTaskRequest หรือ BGAppRefreshTaskRequest ซึ่งช่วยให้เลื่อนการดำเนินการที่ใช้ทรัพยากรมาก (การซิงค์กับเซิร์ฟเวอร์ การวิเคราะห์เส้นทาง) ไปยังหน้าต่างการทำงานพื้นหลังถัดไป โดยไม่บล็อกเธรดหลักของการตอบสนอง SLC

  • Info.plist — สตริงคำอธิบายเหตุผลที่จำเป็นสำหรับการเข้าถึงตำแหน่งในพื้นหลัง
  • Debouncing — อย่าประมวลผลเหตุการณ์มากกว่าหนึ่งครั้งทุก 5–10 นาที
  • BGTaskScheduler — กำหนดเวลางานพื้นหลังหลังจากเหตุการณ์ SLC
  • สิทธิ์ Always — ขอเมื่อจำเป็นจริงๆ เท่านั้น
  • pausesLocationUpdatesAutomatically — เปิดใช้งานเพื่อหยุด GPS อัตโนมัติ

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

Significant Location Change ใน iOS คืออะไร

Significant Location Change (SLC) คือบริการประหยัดพลังงานของ iOS สำหรับตรวจสอบการเคลื่อนที่ขนาดใหญ่ของอุปกรณ์โดยใช้เสาสัญญาณโทรศัพท์มือถือ มันใช้พลังงานน้อยกว่าการติดตาม GPS อย่างต่อเนื่องถึง 90% และเหมาะสำหรับแอปพลิเคชันที่ไม่ต้องการความแม่นยำของตำแหน่งสูง

ความแม่นยำของ Significant Location Change คือเท่าไร

ความแม่นยำของ SLC อยู่ระหว่าง 500 เมตรถึง 3 กิโลเมตร ขึ้นอยู่กับความหนาแน่นของเสาสัญญาณโทรศัพท์มือถือ ในเขตเมืองความแม่นยำสูงกว่า (ใกล้ 500 ม.) ในชนบทต่ำกว่า (หลายกิโลเมตร) SLC ไม่ได้ออกแบบมาสำหรับการระบุพิกัดที่แม่นยำ — มันเป็นทรัพยากรสำหรับการตรวจสอบการเคลื่อนที่อย่างคร่าวๆ

วิธีขอสิทธิ์ Always สำหรับ SLC

เรียก CLLocationManager.requestAlwaysAuthorization() หลังจากเพิ่มสตริง NSLocationAlwaysAndWhenInUseUsageDescription ใน Info.plist ตั้งแต่ iOS 13 เป็นต้นไป ผู้ใช้ต้องเลือก “ตลอดเวลา” (Always) อย่างชัดเจนในไดอะล็อกของระบบ หากไม่มีสิทธิ์นี้ SLC จะไม่ทำงานในพื้นหลัง

SLC สามารถเริ่มต้นแอปที่ถูกยุติได้หรือไม่

ใช่ SLC สามารถเริ่มต้นแอปพลิเคชันใหม่ได้หากถูกระบบยุติเนื่องจากหน่วยความจำไม่เพียงพอ เมื่อเริ่มต้น ให้ตรวจสอบ UIApplication.LaunchOptionsKey.location ในเมธอด didFinishLaunchingWithOptions และเรียก startMonitoringSignificantLocationChanges() เพื่อดำเนินการตรวจสอบต่อไป

SLC แตกต่างจาก Standard Location Service อย่างไร

SLC ใช้เฉพาะเสาสัญญาณโทรศัพท์มือถือและไม่เปิด GPS อย่างต่อเนื่อง ทำให้ประหยัดแบตเตอรี่ได้ถึง 90% ความแม่นยำ: 500 ม. ถึง 3 กม. Standard Location Service ใช้ GPS, Wi-Fi และเสาสัญญาณ ความแม่นยำสูงสุด 10 ม. แต่ใช้พลังงานมากกว่าอย่างมีนัยสำคัญ SLC เหมาะสำหรับการตรวจสอบในพื้นหลัง GPS — สำหรับการนำทาง

สรุป

  • Significant Location Change — การตรวจสอบการเคลื่อนที่ขนาดใหญ่ที่ประหยัดพลังงานบน iOS
  • กลไก — ระบุตำแหน่งด้วยเสาสัญญาณโทรศัพท์มือถือโดยไม่ต้องใช้ GPS ต่อเนื่อง
  • ความแม่นยำ — 500 ม. – 3 กม. ขึ้นอยู่กับความหนาแน่นของโครงสร้างพื้นฐานเซลลูลาร์
  • ทริกเกอร์ — เปลี่ยนเสาสัญญาณ เปิด GPS โดยแอปอื่น เปลี่ยน Wi-Fi
  • สิทธิ์ — iOS 13+ ต้องใช้ Always สำหรับ SLC ในพื้นหลัง
  • การใช้พลังงาน — 0.1–0.5% ต่อชั่วโมง เทียบกับ 5–10% สำหรับ GPS ต่อเนื่อง
  • แนวทางปฏิบัติที่ดีที่สุด — การดีบาวนซ์เหตุการณ์ BGTaskScheduler สำหรับการประมวลผลยาว

เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร

IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ

ปรึกษาโครงการ

อ่านเพิ่มเติม