Chuyển đến nội dung chính

getLocation

LƯU Ý
Vui lòng liên hệ Đội ngũ Zalopay để được cấp quyền sử dụng tính năng này.

Phiên bản hỗ trợ

zpa
Chỉ hỗ trợ ở Zalopay App 9.18.0 Android, version 9.19.0 iOS

Mô tả

Lấy vị trí hiện tại của người dùng. MiniApp chỉ có thể lấy thông tin vị trí tùy thuộc vào lựa chọn quyền của người dùng.

Parameters

ParamData typeRequiredDescription
accuracystringNoChỉ định mức độ chính xác mong muốn cho vị trí. Các giá trị có thể là "cao", "trung bình""thấp". Mặc định là "trung bình". Xem chi tiết bên dưới.
Chỉ hỗ trợ trên ZPA
isCustombooleanNoChọn lấy vị trí với chế độ tùy chỉnh. Mặc định là false. Đọc thêm luồng lấy vị trí
false: getLocation sẽ bao gồm logic lấy vị trí phức tạp (checkLocationPermission, requestLocationPermission)
true: khả dụng để tùy chỉnh UX lấy vị trí
Chỉ được hỗ trợ trên ZPA
appIdnumberNoID ứng dụng được cấp khi đăng ký nhà cung cấp, nhóm Zalopay sẽ cung cấp thông tin này.
showServiceAlertbooleanNoCó hiển thị cảnh báo cấp hệ điều hành nhắc người dùng bật dịch vụ định vị thiết bị khi thiết bị tắt hay không. Mặc định là đúng. Nếu đặt thành sai, API sẽ tắt cảnh báo và ngay lập tức trả về mã lỗi 160105. Chỉ hỗ trợ trên Android ZPA.

Accuracy Levels

  • Độ chính xác cao

  • Mô tả: Cung cấp dữ liệu vị trí chính xác nhất.

  • Độ chính xác điển hình: Trong phạm vi vài mét (1-10 mét).

  • Trường hợp sử dụng: Ứng dụng dẫn đường, dịch vụ chia sẻ xe, theo dõi sức khỏe, thực tế tăng cường.

  • Mức tiêu thụ pin: Cao, do sử dụng liên tục GPS và các cảm biến khác.

  • Độ chính xác trung bình

  • Mô tả: Cân bằng giữa độ chính xác và mức tiêu thụ tài nguyên.

  • Độ chính xác điển hình: Trong phạm vi 10-100 mét.

  • Trường hợp sử dụng: Gắn thẻ vị trí trong các ứng dụng mạng xã hội, tìm kiếm địa phương, ứng dụng thời tiết.

  • Mức tiêu thụ pin: Trung bình, sử dụng kết hợp GPS, Wi-Fi và dữ liệu di động.

  • Độ chính xác thấp

  • Mô tả: Cung cấp dữ liệu vị trí kém chính xác nhất.

  • Độ chính xác điển hình: Lớn hơn 100 mét.

  • Trường hợp sử dụng: Nhận biết vị trí chung, phân phối nội dung theo khu vực, phân tích nhân khẩu học.

  • Mức tiêu thụ pin: Thấp, thường dựa vào phép đo tam giác tháp di động và Wi-Fi.

Dữ liệu trả về mẫu

ParamData typeDescription
longitudestringGiá trị kinh độ của vị trí hiện tại
latitudestringGiá trị vĩ độ của vị trí hiện tại
citystringGiá trị thành phố của vị trí hiện tại
districtstringGiá trị quận/huyện của vị trí hiện tại
wardstringGiá trị phường của vị trí hiện tại
streetstringGiá trị đường của vị trí hiện tại
countryCodestringGiá trị mã quốc gia của vị trí hiện tại
accuracystringĐộ chính xác của dữ liệu vị trí tính bằng mét
timestampstringDấu thời gian (tính bằng mili giây) mà vị trí được lấy lại

Mã Lỗi

Mã lỗiMô tả
010101The user refuses to grant location access
010102The application cannot get the current location
010103Location access request expired
010104User deny request permission!
010105The user refuses to grant permission and does not want to ask again
010106User Authentication Required. Please grant User Authentication permission before requesting User Permission
010107User denied
161001Location permission not granted
161002Location permission denied
161003User deny request permission on consent form
161004Please input appId
161005Location service is disabled

Code và Dữ liệu trả về mẫu

Yêu cầu gửi đi mẫu:

window.zlpSdk.Location.getLocation({ accuracy: "high" })
.then((response) => console.log(response))
.catch((error) => console.error(error.errorCode));

Dữ liệu trả về mẫu:

{
"data": {
"latitude": 37.7749,
"longitude": -122.4194,
"city": "San Francisco",
"district": "Downtown",
"ward": "Ward 2",
"street": "Market Street",
"countryCode": "US",
"accuracy": "Within a few meters (1-10 meters)",
"timestamp": 1694356800000
},
"status": "success"
}