View / XML tracking
cimka-xml tracks taps, long-presses, screens and Activity/Fragment lifecycle without any per-screen code.
implementation("com.cimka:cimka-xml:1.1.1")Cimka.initialize(this)CimkaXml.register()What is tracked
Section titled “What is tracked”Clicks and long-presses
Section titled “Clicks and long-presses”Cimka observes touches on every Activity window and finds the deepest visible view under the finger. Each interaction records:
- view id (resource entry name), class, text, tag and content description
- the owning Fragment and the view hierarchy path
- touch coordinates and the type:
CLICKorLONG_PRESS
For EditText fields, the text is logged as *** when clickLogger.maskSensitiveInputs is true (the default).
Screens
Section titled “Screens”- Activities are logged on
onResumeusing the class name without theActivitysuffix —CheckoutActivity→Checkout. - Fragments are logged on
onResumewithout theFragmentsuffix —ProfileFragment→Profile.
Lifecycle
Section titled “Lifecycle”activity_created, activity_resumed, activity_paused, activity_destroyed, and the matching fragment_* events (including nested child fragments).
Labeling views
Section titled “Labeling views”Give important views a stable, readable label so they’re easy to find in the dashboard:
import com.xhonaldo.cimka.xml.R as CimkaR
checkoutButton.setTag(CimkaR.id.cimka_tag, "checkout_cta")android:tag="checkout_cta" in XML also works; cimka_tag takes priority.
Excluding views
Section titled “Excluding views”Never log taps on a view (for example a PIN pad):
pinPad.setTag(CimkaR.id.cimka_mask, true)