package Ġcom . iv ank sk . p ulk ov os ample Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroid . util . Log Ċ import Ġcom . iv ank sk . p ulk ovo . dispatcher . P ulk ovo Dispatcher Ċ import Ġcom . iv ank sk . p ulk ovo . operations . I Measure Record Ċ import Ġcom . iv ank sk . p ulk ovo . operations . stop Label Measure Ċ import Ġcom . iv ank sk . p ulk ovo . reducer . IR ed ucer Ċ import Ġcom . iv ank sk . p ulk ovo . stats . Stats Reducer Ċ Ċ class ĠApp Ġ: ĠApplication () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval ĠWHAT _ E VER _ YO U _ W ANT _ TAG Ġ= Ġ" TAG " ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġlateinit Ġvar Ġstats Reducer : ĠStats Reducer ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate () ĊĠĠĠĠĠĠĠ Ġstats Reducer Ġ= ĠStats Reducer ( this ) ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġthis ĊĊĠĠĠĠĠĠĠ ĠP ulk ovo Dispatcher ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠAdd Ġlogger Ġto Ġmake Ġoutput Ġwith Ġmeasured Ġvalues ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġthis Ġis Ġgeneric Ġimplementation ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Reducer ( object Ġ: ĠI Reducer Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġreduce ( record : ĠI Measure Record ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġuse Ġwhat Ġever Ġlogger Ġyou Ġwant ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġhere Ġstandard ĠAndroid Ġlogger Ġis Ġused ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . e ( WH AT _ E VER _ YO U _ W ANT _ TAG , Ġ"$ record ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠAdd ĠStats Sol lect or Ġto Ġcollect Ġvalues ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġget ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Reducer ( stats Reducer ) ĊĠĠĠ Ġ} Ċ }