DualFroz Candy Jar
The Candy Jar app for Android, for the candy jar on dualfroz.com, written in Kotlin and Jetpack Compose. Widgets show the last candy drawn and the leaderboard on the home screen, and notifications are set in the app: for every candy, for a chosen one or only for one exact text, separately for each person or as one notification that keeps updating. Delivery is instant through our own ntfy server or roughly every 15 minutes to save battery.
Overview
On dualfroz.com a candy jar stands next to the greeting. A visitor clicks, one of the coloured candies falls out of the jar with a random text, and the rarest golden variants set off their own effect on the page. Candy Jar is the Android app for that jar: it shows on the phone what fell out and for whom, without opening the site.
We wrote it natively, in Kotlin and Jetpack Compose.
Home screen widgets
a widget with the last candy drawn and its text, with a golden mark for a rare variant.
a widget with the candy leaderboard, refreshed together with the jar's data.
The jar screen
The main screen shows the last candy on a large card, the number of draws today and in total, the leaderboard and a list of recent draws. Without internet the app does not show an empty screen but the last saved state of the jar, together with a note that it could not be refreshed.
Notifications set up in the app
Draw notifications are off by default, and everyone decides for themselves what they want to know about.
Notification settings
| Setting | Options |
|---|---|
| About what | Every candy, a chosen candy or one exact candy text |
| When several fall | A separate notification per person or one that keeps updating, with a count of draws and people |
| Delivery | Instantly, through a light background connection, or roughly every 15 minutes to save battery |
A notification looks like a message from the candy: on the left is the picture of the candy that fell out. In single notification mode the sound plays only when someone new draws, and further candies from the same person are added quietly.
Delivery through our own ntfy server
Instant notifications go through our own ntfy server, without Google services. The app keeps a light background connection to it and restores it after the phone restarts, and the notification about the connection itself can be hidden without breaking it. Periodic mode checks the jar roughly every 15 minutes through the system job scheduler.
Questions about DualFroz Candy Jar
More projects
More work from the same category - see how we tackle similar challenges.
Have a similar project?
Get in touch - a quote is free and comes back within an hour.



