Place Autocomplete (Phiên bản cũ) sử dụng mã 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 cụm từ tìm kiếm và kết thúc khi họ chọn một địa điểm và lệnh gọi đến Place Details (Cũ) được thực hiện. Mỗi phiên có thể có nhiều cụm từ tìm kiếm 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 phiên kết thúc, mã thông báo sẽ không còn hợp lệ; ứ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 tham 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 được tính phí riêng).
Bạn nên làm theo 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 hoàn thành.
- 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ả yêu cầu Place Autocomplete (Cũ) và Place Details (Cũ) trong một phiên đều thuộc cùng một dự án Google Cloud Console.
- Hãy nhớ truyền một mã thông báo phiên riêng biệt cho mỗi phiên mới. Nếu bạn sử dụng cùng một mã thông báo cho nhiều phiên, thì mỗi yêu cầu sẽ được tính phí riêng.
Bạn có thể tuỳ ý bỏ qua mã phiên tự động hoàn thành trong một yêu cầu. Nếu bạn bỏ qua mã phiên, thì mỗi yêu cầu sẽ được tính phí riêng, kích hoạt Tự động hoàn thành – Mỗi yêu cầu SKU. 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ẽ được 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 cụm từ tìm kiếm, yêu cầu tự động hoàn thành sẽ được gọi sau mỗi vài lần nhấn phím (không phải theo từng ký tự) và danh sách các kết quả có thể có sẽ được trả về. Khi người dùng chọn trong danh sách kết quả, lựa chọn đó sẽ đượ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 duy nhất. 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 không tính phí và chỉ yêu cầu về 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ì bạn chỉ bị tính phí cho cụm từ tìm kiếm.
Hãy xem xét trình tự 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 để tì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ã phiên mới, "Mã thông báo A".
- Khi người dùng nhập, API sẽ đưa ra yêu cầu tự động hoàn thành sau mỗi vài ký tự, hiển thị danh sách kết quả tiềm năng mới cho mỗi ký tự:
"P"
"Par"
"Paris,"
"Paris, Fr"
- Khi người dùng đưa ra lựa chọn:
- Tất cả yêu cầu từ cụm từ tìm kiếm đề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 Place Details và được thêm vào phiên hoạt động do "Mã thông báo A" đại diện.
- 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í cho các yêu cầu của tính năng Place Autocomplete (Phiên bản cũ), hãy xem phần Mức sử dụng và thanh toán.
Tạo mã thông báo phiên
Để tạo mã thông báo phiên, hãy gọi
GMSAutocompleteSessionToken.init().