1/*******************************************************************************
2 *      Copyright (C) 2013 Google Inc.
3 *      Licensed to The Android Open Source Project.
4 *
5 *      Licensed under the Apache License, Version 2.0 (the "License");
6 *      you may not use this file except in compliance with the License.
7 *      You may obtain a copy of the License at
8 *
9 *           http://www.apache.org/licenses/LICENSE-2.0
10 *
11 *      Unless required by applicable law or agreed to in writing, software
12 *      distributed under the License is distributed on an "AS IS" BASIS,
13 *      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 *      See the License for the specific language governing permissions and
15 *      limitations under the License.
16 *******************************************************************************/
17
18package com.android.mail.analytics;
19
20import android.app.Activity;
21
22/**
23 * Analytics libraries should implement this interface.
24 */
25public interface Tracker {
26
27    void activityStart(Activity a);
28    void activityStop(Activity a);
29    void sendEvent(String category, String action, String label, long value);
30    void sendMenuItemEvent(String category, int itemResId, String label, long value);
31    void sendTiming(String category, long millis, String name, String label);
32    void sendView(String view);
33    void setCustomDimension(int index, String value);
34    /**
35     * Sets the email address of the account being tracked,
36     * @param accountManagerType The accountManagerType of account in account manager.
37     */
38    public void setEmail(String emailAddress, String accountManagerType);
39
40    void setCustomMetric(int index, Long value);
41
42    void debugDispatchNow();
43
44}
45