API không gian địa lý sử dụng kết hợp VPS và dữ liệu GPS để tạo ra các biến đổi Không gian địa lý có độ chính xác cao. Bạn có thể sử dụng API này ở bất kỳ nơi nào mà thiết bị có thể xác định vị trí của thiết bị:
- Ở những khu vực có độ chính xác GPS thấp, chẳng hạn như không gian trong nhà và môi trường đô thị đông đúc, API sẽ dựa vào phạm vi phủ sóng của VPS để tạo ra các biến đổi có độ chính xác cao.
- Trong môi trường ngoài trời có ít hoặc không có vật cản trên đầu, API Không gian địa lý có thể sử dụng dữ liệu vị trí GPS có sẵn để tạo ra các biến đổi Không gian địa lý với độ chính xác cao.
Bạn có thể xác định khả năng sử dụng máy chủ ảo (VS) tại một vị trí ngang nhất định trước khi phiên thực tế tăng cường bắt đầu và sử dụng mô-đun này để tạo trải nghiệm cụ thể hơn – ví dụ: để trình bày một giao diện "Chuyển sang môi trường thực tế tăng cường" chỉ khi có sẵn dịch vụ ảo VPN.
Bật API ARCore
Ứng dụng của bạn phải bật ARCore API để kiểm tra khả năng sử dụng của VPS.
Kiểm tra khả năng sử dụng máy chủ ảo (VPS) trong ứng dụng của bạn
Bạn có thể sử dụng API không gian địa lý ở bất kỳ nơi nào mà thiết bị có thể xác định vị trí của thiết bị. Nếu trải nghiệm thực tế tăng cường của bạn phụ thuộc vào phạm vi sử dụng của VPS, thì bạn có thể sử dụng GARSession#checkVPSAvailabilityAtCoordinate:completionHandler:
để lấy GARVPSAvailabilityFuture
. Đây là một tác vụ không đồng bộ giúp kiểm tra khả năng sử dụng của VPS ở một vị trí ngang nhất định.
Sau khi có GARVPSAvailabilityFuture
, bạn có thể lấy kết quả bằng cách thăm dò ý kiến hoặc thông qua lệnh gọi lại.
Thăm dò kết quả
Sử dụng GARFuture.state
để lấy trạng thái của Future
. Có ba trạng thái khác nhau:
GARFutureStatePending
: Thao tác chưa hoàn tất nên chưa xác định được kết quả.GARFutureStateCancelled
: Thao tác đã bịGARFuture#cancel
huỷ. Mọi lệnh gọi lại đã đăng ký sẽ không bao giờ được gọi.GARFutureStateDone
: Thao tác đã hoàn tất. Sử dụngGARVPSAvailabilityFuture.result
để nhận kết quả.
Bạn có thể tiếp tục kiểm tra GARFuture.state
cho đến khi nhiệm vụ này hoàn tất.
Lấy kết quả thông qua lệnh gọi lại
Bạn cũng có thể lấy kết quả của Future
thông qua lệnh gọi lại. Sử dụng GARSession#checkVPSAvailabilityAtCoordinate:completionHandler:
và cung cấp completionHandler
. completionHandler
này sẽ được gọi trên Luồng chính ngay sau khi Future
có trạng thái GARFutureStateDone
.
Huỷ Future
Sử dụng GARFuture#cancel
để thử huỷ Future
. Do tình trạng song song của luồng, có thể yêu cầu huỷ của bạn không thực sự thành công.
GARFuture#cancel
sẽ trả về YES
nếu lần thử này thành công và nếu không thì trả về NO
.
Sử dụng API Không gian địa lý mà không cần sử dụng VPS
Bạn cũng có thể sử dụng API không gian địa lý ở những khu vực không có phạm vi phủ sóng của VPS. Trong môi trường ngoài trời có ít hoặc không có vật cản trên đầu, GPS có thể đủ để tạo tư thế với độ chính xác cao.
Các bước tiếp theo
- Lấy tư thế Không gian địa lý của máy ảnh trên thiết bị để xác định vị trí chính xác thiết bị của người dùng trong thế giới thực.