Tính năng Tự động hoàn thành địa điểm sử dụng mã thông báo phiên để nhóm các giai đoạn truy vấn và lựa chọn của một lượt tìm kiếm tự động hoàn thành của người dùng thành một phiên riêng biệt cho mục đích thanh toán. Phiên bắt đầu khi người dùng bắt đầu nhập truy vấn và kết thúc khi họ chọn một địa điểm và thực hiện lệnh gọi đến Thông tin chi tiết về địa điểm. Mỗi phiên có thể có nhiều truy vấn tự động hoàn thành, theo sau là một lựa chọn địa điểm. (Các) khoá API dùng cho mỗi yêu cầu trong một phiên phải thuộc cùng một dự án trên Google Cloud Console. Sau khi một phiên kết thúc, mã thông báo sẽ không còn hợp lệ nữa; ứng dụng của bạn phải tạo một mã thông báo mới cho mỗi phiên. Nếu bạn bỏ qua thông số sessiontoken
hoặc nếu bạn sử dụng lại mã thông báo phiên, thì phiên sẽ được tính phí như thể không có mã thông báo phiên nào được cung cấp (mỗi yêu cầu sẽ được tính phí riêng).
Bạn nên tuân thủ các nguyên tắc sau:
- Sử dụng mã thông báo phiên cho tất cả các phiên tự động điền.
- Tạo mã thông báo mới cho mỗi phiên.
- Đảm bảo rằng(các) khoá API dùng cho tất cả các yêu cầu Tự động hoàn thành địa điểm và Thông tin chi tiết về địa điểm trong một phiên thuộc cùng một dự án trên Google Cloud Console.
- Hãy nhớ truyền một mã thông báo phiên duy nhất cho mỗi phiên mới. Việc sử dụng cùng một mã thông báo cho nhiều phiên sẽ khiến mỗi yêu cầu được tính phí riêng.
Bạn có thể tuỳ ý bỏ qua mã thông báo phiên tự động hoàn thành khỏi một yêu cầu. Nếu bạn bỏ qua mã thông báo phiên, thì mỗi yêu cầu sẽ được tính phí riêng, kích hoạt SKU Tự động hoàn thành – Theo yêu cầu. Nếu bạn sử dụng lại mã thông báo phiên, thì phiên đó sẽ được coi là không hợp lệ và các yêu cầu sẽ bị tính phí như thể không có mã thông báo phiên nào được cung cấp.
Ví dụ:
Khi người dùng nhập một truy vấn, một yêu cầu tự động hoàn thành sẽ được gọi sau mỗi vài thao tác nhấn phím (không phải theo từng ký tự) và danh sách kết quả có thể có sẽ được trả về. Khi người dùng chọn một mục trong danh sách kết quả, mục đó được tính là một yêu cầu và tất cả các yêu cầu được thực hiện trong quá trình tìm kiếm sẽ được gộp lại và tính là một yêu cầu. Nếu người dùng chọn một địa điểm, thì cụm từ tìm kiếm sẽ được cung cấp miễn phí và chỉ yêu cầu Dữ liệu địa điểm mới bị tính phí. Nếu người dùng không đưa ra lựa chọn trong vòng vài phút kể từ khi bắt đầu phiên, thì chỉ truy vấn tìm kiếm mới bị tính phí.
Hãy cùng xem xét luồng sự kiện này từ góc độ của một ứng dụng.
- Người dùng bắt đầu nhập cụm từ tìm kiếm "Paris, Pháp".
- Khi phát hiện hoạt động đầu vào của người dùng, ứng dụng sẽ tạo một mã thông báo phiên mới, "Mã thông báo A".
- Khi người dùng nhập, API sẽ tạo một yêu cầu tự động hoàn thành sau mỗi vài ký tự, hiển thị một danh sách mới gồm các kết quả tiềm năng cho mỗi ký tự:
"P"
"Par"
"Paris,"
"Paris, Fr"
- Khi người dùng chọn:
- Tất cả các yêu cầu phát sinh từ truy vấn đều được nhóm lại và thêm vào phiên được biểu thị bằng "Mã thông báo A", dưới dạng một yêu cầu duy nhất.
- Lựa chọn của người dùng được tính là một yêu cầu Thông tin chi tiết về địa điểm và được thêm vào phiên được biểu thị bằng "Mã thông báo A".
- Phiên kết thúc và ứng dụng sẽ loại bỏ "Mã thông báo A".
Để biết thêm thông tin về cách tính phí các yêu cầu Tự động hoàn thành, hãy xem phần Mức sử dụng và tính phí.
Tạo mã thông báo phiên
Để tạo mã thông báo phiên, hãy gọi GMSAutocompleteSessionToken.init()
.