Phiên – SDK Android phiên bản 2 (Cũ)

Tài liệu này cung cấp thông tin tổng quan cấp cao về các phiên trong Google Mobile App Analytics và Google Analytics SDK dành cho Android phiên bản 2, đồng thời mô tả các phương pháp khác nhau có sẵn để quản lý phiên trong ứng dụng của bạn.

Tổng quan

Phiên hoạt động đại diện cho một khoảng thời gian người dùng tương tác với ứng dụng. Phiên hoạt động như những vùng chứa hữu ích của hoạt động được đo lường, bao gồm lượt xem màn hình, sự kiện và giao dịch thương mại điện tử.

Theo mặc định, Google Analytics sẽ nhóm các lượt truy cập nhận được trong vòng 30 phút với nhau vào cùng một phiên. Tuy nhiên, nhiều nhà phát triển có thể muốn triển khai một lớp quản lý phiên bổ sung có tính đến trạng thái của ứng dụng, chẳng hạn như thời điểm ứng dụng chạy ở chế độ nền và trong bao lâu.

Phần còn lại của tài liệu này sẽ mô tả các phương thức có thể dùng để triển khai logic đó. Các lựa chọn của bạn bao gồm từ quản lý phiên hoàn toàn tự động do EasyTracker cung cấp, đến xây dựng logic quản lý phiên của riêng bạn theo cách thủ công hoặc sử dụng kết hợp cả hai.

Quản lý phiên

Phần sau đây sẽ mô tả các phương thức có sẵn để bạn quản lý các phiên trong ứng dụng.

Quản lý phiên tự động bằng EasyTracker

EasyTracker cung cấp tính năng quản lý phiên tự động có thể xử lý công việc bắt đầu phiên mới cho bạn. Dưới đây là thông tin tổng quan về cách hoạt động của tính năng quản lý phiên tự động:

  • Cách triển khai mặc định có khoảng thời gian chờ của phiên là 30 giây. Bạn có thể thay đổi khoảng thời gian chờ bằng cách sửa đổi tham số ga_sessionTimeout trong tệp analytics.xml:
      <-- Set session time out to 60 seconds -- >
      <integer name="ga_sessionTimeout">60</integer>
  • Nếu ứng dụng vẫn ở trong nền lâu hơn khoảng thời gian chờ của phiên, EasyTracker sẽ gắn cờ nhu cầu cho một phiên mới và lượt truy cập tiếp theo sẽ là một phần của phiên mới.

Quản lý phiên theo cách thủ công

Ngay cả khi đang sử dụng tính năng quản lý phiên tự động của EasyTracker, bạn vẫn nên bắt đầu các phiên mới theo cách thủ công tại các sự kiện chính trong vòng đời của ứng dụng.

Ví dụ: bạn có thể muốn bắt đầu một phiên mới theo cách thủ công mỗi khi người dùng đăng nhập thành công vào ứng dụng. Vì ý định của người dùng trong việc sử dụng ứng dụng có thể đã thay đổi hoặc có thể là một đối tượng thay thế của người dùng khác, nên việc bắt đầu một phiên mới khi đăng nhập sẽ giúp tách biệt dữ liệu sử dụng và dễ hiểu hơn trong báo cáo của bạn.

Để bắt đầu một phiên mới, hãy gọi setStartSession(true). Thao tác này sẽ thêm thông số vào lượt truy cập được gửi tiếp theo cho biết rằng nó sẽ bắt đầu một phiên mới.

Trong ví dụ bên dưới, chúng tôi giả định rằng onSignIn() được gọi bất cứ khi nào người dùng đăng nhập thành công vào ứng dụng của bạn:

// Called after a user successfully signs in to your app.
private void onSignIn() {
  ... // The rest of your onSignIn() code.
  myTracker.setStartSession(true); // Where myTracker is an instance of Tracker.
  myTracker.sendEvent("app_flow", "sign_in", "", null); // First activity of new session.
}