ตรวจสอบความพร้อมใช้งานของ VPS ที่ตำแหน่งปัจจุบันของอุปกรณ์

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

  • ในพื้นที่ที่ GPS มีความแม่นยำต่ำ เช่น พื้นที่ในอาคารและสภาพแวดล้อมในเมืองที่มีความหนาแน่นสูง API จะใช้การครอบคลุม VPS เพื่อสร้างการแปลงที่มีความแม่นยำสูง
  • ในสภาพแวดล้อมกลางแจ้งที่มีสิ่งกีดขวางเหนือศีรษะเพียงเล็กน้อยหรือไม่มีเลย Geospatial API อาจใช้ข้อมูลตำแหน่ง GPS ที่พร้อมใช้งานเพื่อสร้างการเปลี่ยนรูปแบบเชิงพื้นที่ที่มีความแม่นยำสูงได้

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

เปิดใช้ ARCore API

แอปของคุณต้องเปิดใช้ ARCore API เพื่อตรวจสอบความพร้อมใช้งานของ VPS

ตรวจสอบความพร้อมให้บริการของ VPS ในแอป

Geospatial API สามารถใช้ได้ทุกที่ที่อุปกรณ์สามารถระบุตำแหน่งได้ หากประสบการณ์ AR ของคุณขึ้นอยู่กับความครอบคลุมของ VPS คุณสามารถใช้ GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: เพื่อรับ GARVPSAvailabilityFuture ซึ่งเป็นงานที่ทำงานแบบไม่พร้อมกันซึ่งจะตรวจสอบความพร้อมใช้งานของ VPS ในตำแหน่งแนวนอนที่ระบุ เมื่อมี GARVPSAvailabilityFuture แล้ว คุณจะดูผลลัพธ์ได้ด้วยแบบสำรวจหรือผ่านทาง Callback

สำรวจผลลัพธ์

ใช้ GARFuture.state เพื่อดูสถานะของ Future โดยจะมีสถานะต่างๆ 3 สถานะ ดังนี้

  • GARFutureStatePending: การดำเนินการยังไม่เสร็จสมบูรณ์ จึงไม่ทราบผลลัพธ์
  • GARFutureStateCancelled: GARFuture#cancel ได้ยกเลิกการดำเนินการแล้ว ระบบจะไม่โทรกลับหาหมายเลขใดก็ตามที่ลงทะเบียนไว้
  • GARFutureStateDone: การดำเนินการเสร็จสมบูรณ์แล้ว ใช้ GARVPSAvailabilityFuture.result เพื่อดูผลลัพธ์

คุณอาจตรวจสอบ GARFuture.state ต่อไปจนกว่างานจะเสร็จสมบูรณ์

รับผลลัพธ์ผ่านการติดต่อกลับ

นอกจากนี้ คุณยังดูผลลัพธ์ของ Future ผ่านคอลแบ็กได้ด้วย ใช้ GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: แล้วป้อน completionHandler ระบบจะเรียกใช้ completionHandler นี้ในเธรดหลักไม่นานหลังจากที่ Future มีสถานะ GARFutureStateDone

ยกเลิก Future

ใช้ GARFuture#cancel เพื่อพยายามยกเลิก Future เนื่องจากชุดข้อความมีเนื้อหาพร้อมกัน จึงอาจเป็นไปได้ที่ความพยายามในการยกเลิกของคุณไม่สำเร็จ GARFuture#cancel จะแสดงผล YES หากการพยายามนี้สำเร็จ และเป็น NO ในกรณีอื่นๆ

ใช้ Geospatial API ที่ไม่ครอบคลุม VPS

นอกจากนี้ Geospatial API ยังใช้ในพื้นที่ที่ไม่ครอบคลุม VPS ได้อีกด้วย ในสภาพแวดล้อมกลางแจ้งที่มีสิ่งกีดขวางเหนือศีรษะเพียงเล็กน้อยหรือไม่มีเลย GPS อาจเพียงพอที่จะสร้างท่าทางที่มีความแม่นยำสูง

ขั้นตอนถัดไป