Điều phối – SDK Android phiên bản 2 (Cũ)

Tài liệu này mô tả cách bạn có thể quản lý việc gửi dữ liệu đến Google Analytics bằng SDK Google Analytics dành cho Android phiên bản 2.

Tổng quan

Trong SDK Google Analytics dành cho Android, dữ liệu đã thu thập như lượt xem màn hình hoặc sự kiện được lưu trữ cục bộ trong hàng đợi trước khi được gửi đến máy chủ Google Analytics. Quá trình gửi các phần dữ liệu này (gọi là "lượt truy cập") từ SDK đến Google Analytics được gọi là gửi.

Việc gửi bản vá là duy nhất đối với các thư viện bộ sưu tập di động và được thiết kế để giảm thiểu những thách thức khi truy cập mạng không đáng tin cậy và thời lượng pin hạn chế.

Có hai loại gửi:

  • Gửi định kỳ – tự động gửi các lượt truy cập tại khoảng thời gian định kỳ mà bạn chỉ định theo phương thức lập trình hoặc trong tệp analytics.xml.
  • Điều phối thủ công – gửi lượt truy cập theo cách thủ công để gửi dữ liệu vào thời điểm thuận tiện cho bạn, ví dụ: khi có sẵn kết nối HTTP.

Cả hai loại điều phối đều xảy ra bên ngoài luồng giao diện người dùng chính trong phiên bản 2 của SDK

Phần còn lại của tài liệu này sẽ cung cấp thông tin chi tiết hơn về từng loại điều phối và cách triển khai chúng trong ứng dụng.

Điều phối định kỳ

Khi ứng dụng của bạn thu thập dữ liệu GA, dữ liệu đó sẽ được thêm vào hàng đợi và được gửi định kỳ đến Google Analytics. Quá trình phân phối định kỳ có thể diễn ra khi ứng dụng đang chạy ở nền trước hoặc trong nền.

Thời gian gửi mặc định là 30 phút. Bạn có thể tự cung cấp khoảng thời gian tính bằng giây bằng cách sử dụng tham số ga_dispatchPeriod trong tệp analytics.xml hoặc gọi setDispatchPeriod(int dispatchPeriodInSeconds) như trong ví dụ sau:

Trong tệp analytics.xml:

<integer name="ga_dispatchPeriod">60</integer>

Theo phương thức lập trình:

GAServiceManager.getInstance().setDispatchPeriod(60);

Việc đặt giá trị âm sẽ tắt chế độ gửi định kỳ, yêu cầu bạn phải sử dụng tính năng gửi thủ công nếu muốn gửi bất kỳ dữ liệu nào đến Google Analytics. Mặt khác, việc đặt giá trị 0 sẽ gửi ngay từng lượt truy cập nếu có kết nối mạng.

Sau khi tất cả các lượt truy cập đã được gửi đi, hoạt động điều phối định kỳ sẽ chuyển sang chế độ tiết kiệm điện năng và bị tắt cho đến khi một lệnh gọi gửi khác được thực hiện.

Nếu người dùng mất quyền truy cập mạng hoặc thoát khỏi ứng dụng của bạn trong khi vẫn còn các lượt truy cập đang chờ gửi, thì những lượt truy cập đó sẽ được giữ lại trong bộ nhớ cục bộ. Chúng sẽ được gửi vào lần tiếp theo ứng dụng của bạn chạy và điều phối được gọi.

Điều phối thủ công

Ngoài việc dựa vào phương thức điều phối định kỳ, có thể có một số trường hợp bạn muốn điều phối lượt truy cập theo cách thủ công. Ví dụ: bạn có thể nhóm các thông báo gửi đi với các yêu cầu HTTP khác do ứng dụng của bạn thực hiện để giảm mức hao tổn.

Các lượt truy cập có thể được gửi theo cách thủ công bằng cách sử dụng thực thể GAServiceManager:

GAServiceManager.getInstance().dispatch();