I woke up one rainy day and decided to stop building only for users… and start building for us. It was one of those mornings where the code just wasn’t clicking. I was struggling with a notification bug (again), fighting with the Android documentation, and guessing how a payload from a banking application would actually look on my physical device.
That’s when it hit me: Why are we always focusing on B2B or B2C? What about a tool built by a developer, specifically to solve a headache for another developer? I decided to call it D2D: Developer-to-Developer. Developer tools written by a developer, for developers. Free, open-source, and practical tools to help developers in their daily work!
And that’s how “Pushes Test” app was born. It’s a “Live Laboratory” designed to take the guesswork out of the Android Notification API. I developed Pushes Test as a D2D utility to bridge the gap between “what the documentation says” and “how the Android OS actually behaves.” By exploring the source code and testing the app on physical hardware, we can master the nuances of the Notification API.
1. The Utility: Streamlining the Testing Workflow
Most notification development follows a tedious cycle: manual typing, backend triggers, and long wait times. I built Pushes Test to modernize this workflow by providing a “local loop” that simulates every part of the notification journey.
No more “Test 1” typing: Smart Mock Data
Manual typing is the enemy of efficiency. I implemented a Mock Data engine with over 100 real-world developer scenarios — ranging from GitHub PRs to critical database alerts.
The “Patience” Test: Sending Delays
A developer needs to see how a notification behaves when the device is “at rest.” By implementing Sending Delays (10s, 30s, 60s), the app allows you to click “Send,” lock your device, and walk away. This is the only way to accurately test lock-screen wake-ups and system behaviors in Doze mode.
Stress-Testing: Periodic Loops
How does your system listener handle a flood of data? Periodic Loops allow you to automate notification delivery at fixed intervals. This is essential for stress-testing background stability and verifying how the OS handles a stream of incoming alerts over a long period.
............
For deeper insights, tutorials, and implementation details, I invite you to explore my articles on Medium, GitHub and other platforms listed below via links...
