1 /* 2 * Copyright (C) 2015 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.deskclock.events; 18 19 import android.support.annotation.StringRes; 20 21 public interface EventTracker { 22 /** 23 * Send screen view tracking to Log system. 24 * 25 * @param screenName Screen name to be logged 26 */ sendView(String screenName)27 void sendView(String screenName); 28 29 /** 30 * Send category, action and label describing an event to Log system. 31 * 32 * @param category string resource id indicating Alarm, Clock, Timer or Stopwatch or 0 for no 33 * category 34 * @param action string resource id indicating how the entity was altered; 35 * e.g. create, delete, fire, etc or 0 for no action 36 * @param label string resource id indicating where the action originated; 37 * e.g. DeskClock (UI), Intent, Notification, etc. or 0 for no label 38 */ sendEvent(@tringRes int category, @StringRes int action, @StringRes int label)39 void sendEvent(@StringRes int category, @StringRes int action, @StringRes int label); 40 41 /** 42 * Send category, action and label describing an event to Log system. 43 * 44 * @param category Alarm, Clock, Timer or Stopwatch 45 * @param action how the entity was altered; e.g. create, delete, fire, etc 46 * @param label where the action originated; e.g. DeskClock (UI), Intent, Notification, etc. 47 */ sendEvent(String category, String action, String label)48 void sendEvent(String category, String action, String label); 49 } 50