Nhảy tới nội dung
Lưu ý

Cần xin cấp quyền tại trang Quản lý ứng dụng

Lấy vị trí hiện tại của người dùng. Khi gọi API, một thông báo xin cấp quyền sẽ được hiển thị. Mini App chỉ lấy được thông tin vị trí nếu người dùng đồng ý cấp quyền chia sẻ vị trí.

Lưu ý, để giúp các nhà phát triển Mini App sử dụng flow xin quyền một cách hiệu quả, cũng như phù hợp với chính sách của Zalo Mini App điều 3.3.4, Mini App Team đã đưa ra một số gợi ý thiết kế trải nghiệm như thông tin bên dưới. Nhà phát triển cần giải thích rõ ràng và trực quan mục đích xin quyền để người dùng dễ dàng hiểu và đồng ý cung cấp thông tin.

Flow request location

Nhằm đảm bảo trải nghiệm thoải mái của người dùng Mini App, chúng tôi sẽ từ chối xét duyệt cho những Mini App có luồng xin cấp quyền chưa rõ ràng, không nêu được mục đích xin quyền đến người dùng. Tham khảo một số trường hợp vi phạm như bên dưới:

Flow request location reject

Parameters

Object object

PropertyTypeDefaultRequiredDescriptionMinimum Version
successfunctionCallback function khi gọi api thành công
failfunctionCallback function khi gọi api thất bại

Return Values

Promise <Object data>

Property Type Description Minimum Version Note
token string Là một chuỗi ký tự dùng để truy xuất thông tin vị trí thông qua server. Mỗi Token được cung cấp, bạn sẽ có thể truy xuất thông tin được 1 lần với thời gian hết hạn sau 2 phút Zalo App: 23.02.01, SDK: 2.29.0

Mô tả luồng truy xuất thông tin

getLocation

Hướng dẫn sử dụng api getLocation()

import { getLocation } from "zmp-sdk/apis";

getLocation({
success: async (data) => {
let { token } = data;
},
fail: (error) => {
// xử lý khi gọi api thất bại
console.log(error);
}
});

Hướng dẫn chuyển đổi token thành thông tin vị trí người dùng

Sử dụng token vừa nhận được để truy xuất thông tin vị trí người dùng từ Server của bạn thông qua Zalo Open API, vui lòng tham khảo code mẫu bên dưới:

Code demo fallback when rendering server side!

Mô tả các tham số cần sử dụng:

  • access_token: truy xuất thông qua API sdk.getAccessToken
  • code: giá trị là token bạn nhận được khi gọi API lấy vị trí trên phiên bản Zalo
  • secret_key: Khoá bí mật của Zalo App, truy cập https://developers.zalo.me/, phần Quản lý ứng dụng tương ứng để truy xuất thông tin

Ví dụ kết quả trả về:

{
"data": {
"provider": "gps",
"latitude": "10.758341",
"longitude": "106.745863",
"timestamp": "1666249171003"
},
"error": 0,
"message": "Success"
}

Errors

  • Mã lỗi cho API getLocation:

Bắt đầu hỗ trợ:

  • API phiên bản: 2.21.0
CodeMessageNote
-201User deny request permission!Người dùng từ chối cấp quyền
-202User deny request permission!Người dùng từ chối cấp quyền và không muốn hỏi lại
-1401User Authentication Required. Please grant User Authentication permission before requesting User PermissionNgười dùng chưa cấp thông tin xác thực, chi tiết tham khảo tại đây getAccessToken
-2002User deniedNgười dùng đã từ chối cấp quyền trước đó và không muốn hỏi lại
  • Bảng mã lỗi cho API truy xuất số điện thoại từ token:
CodeMessageNote
114code is emptytham số code rỗng
115code is invalidtham số code không hợp lệ
116secret_key is emptytham số secret_key rỗng
117secret_key is invalidtham số secret_key không hợp lệ
118code is invalidham số code không hợp lệ, thuộc về một App khác
119code has already been usedcode đã được sử dụng