Complete Analytics SDK Ecosystem - Track user behavior, sessions, events, and crashes with enterprise-grade analytics infrastructure
InsightTrack is a comprehensive analytics solution that provides developers with a powerful Android SDK, robust backend API, and intuitive admin dashboard to track and analyze user behavior in mobile applications.
- π Real-time Analytics Dashboard - See user behavior instantly
- π± Screen Tracking - Know which screens users visit most
- π° E-commerce Insights - Track purchases and conversions
- π₯ Crash Reporting - Automatically detect and report crashes
- π Offline Support - Events saved when offline, sent when online
- π Privacy Focused - GDPR compliant, no personal data required
In your app's build.gradle:
dependencies {
implementation 'com.github.michaelarie96:InsightTrack:v1.0.7'
}Create or edit your Application class:
class MyApplication : Application() {
override fun onCreate() {
super.onCreate()
InsightTrackSDK.Builder.with(this)
.setApiKey("your-api-key") // Get this from the InsightTrack team
.useProduction("insighttrack-dashboard.app") // Demo server (not deployed)
.build()
}
}// β¨ Super simple - just describe what happened
InsightTrackSDK.getInstance().trackEvent("User shared a photo")
// π Simple with category
InsightTrackSDK.getInstance().trackEvent("button_click", "User tapped the like button")
// π’ Advanced (for complex apps)
InsightTrackSDK.getInstance().trackPurchase("order_123", 29.99)That's it! Your app is now tracking user behavior.
// β¨ Simple - describe anything that happens
InsightTrackSDK.getInstance().trackEvent("User completed tutorial")
InsightTrackSDK.getInstance().trackEvent("User subscribed to premium")
// π Organized - categorize your events
InsightTrackSDK.getInstance().trackEvent("video_action", "User played intro video")
InsightTrackSDK.getInstance().trackEvent("social_share", "User shared on Instagram")
// π§ Advanced - custom properties for detailed analysis
InsightTrackSDK.getInstance().trackEvent("level_completed", mapOf(
"level" to 5,
"score" to 1250,
"time_spent" to 120,
"difficulty" to "hard"
))// Complete purchase funnel tracking
InsightTrackSDK.getInstance().trackProductView("iphone15", "iPhone 15", 999.0, "Electronics")
InsightTrackSDK.getInstance().trackAddToCart("iphone15", "iPhone 15", 999.0, 1)
InsightTrackSDK.getInstance().trackCheckout()
InsightTrackSDK.getInstance().trackPurchase("order_456", 999.0)// User identification and authentication
InsightTrackSDK.getInstance().setUserId("user_12345")
InsightTrackSDK.getInstance().trackLogin("email")
InsightTrackSDK.getInstance().trackLogout()
// Screen and navigation tracking
InsightTrackSDK.getInstance().trackScreenView("MainActivity")
InsightTrackSDK.getInstance().trackButtonClick("share_button")
InsightTrackSDK.getInstance().trackFeatureUsed("premium_feature")// Track user search behavior
InsightTrackSDK.getInstance().trackSearch("laptop", 25) // query and results count
InsightTrackSDK.getInstance().trackSettingsChanged("notifications", true)
InsightTrackSDK.getInstance().trackProfileUpdated()// Automatic crash reporting (set up in Application class)
try {
riskyOperation()
} catch (exception: Exception) {
InsightTrackSDK.getInstance().logCrash(exception)
}
// Manual error logging
InsightTrackSDK.getInstance().logError("API_ERROR", "Failed to load user data")
Real-time analytics with user growth, retention analysis, and comprehensive metrics
Device crash patterns, daily trends, and geographic event distribution
Session duration analysis, crash impact ranking, and clickable activity tables
Click any event to see complete details including user info, properties, and device data
Full stack traces, impact analysis, and debugging information for quick issue resolution
Features Shown:
- π Real-time user growth and retention analytics
- π Geographic user distribution worldwide
- π₯ Comprehensive crash reporting with trends
- π± Device-specific crash patterns
- π― Top events and user interaction tracking
- π Clickable tables with detailed modals
- π Session duration and engagement analysis
Watch the complete InsightTrack ecosystem in action:
Note: Video recorded for academic demonstration purposes
// For local testing with your Flask server
InsightTrackSDK.Builder.with(this)
.setApiKey("test-key")
.useLocalDevelopment(5001) // Your Flask server port
.build()Requirements:
- Run Flask server locally:
python app.py - Allow HTTP traffic for Android (create
network_security_config.xml):
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="false">10.0.2.2</domain>
<domain includeSubdomains="false">localhost</domain>
</domain-config>
</network-security-config>- Add to
AndroidManifest.xml:
<application
android:networkSecurityConfig="@xml/network_security_config"
...>// For live apps with your deployed backend
InsightTrackSDK.Builder.with(this)
.setApiKey("your-api-key")
.useProduction("your-analytics-api.vercel.app") // YOUR deployed Flask server
.build()Requirements:
- Deploy your Flask backend to Vercel/Heroku/AWS/etc.
- Set up MongoDB Atlas database
- Use your deployed server URL
- Minimum Android: API 26 (Android 8.0)
- Permissions: Internet access (automatically added)
- Size: < 500KB added to your app
MIT License - use in any project, commercial or personal.
π Maintained by: Michael Arie