On iOS, its simply a matter of calling the right functions, and Corona Labs supports it: native.getProperty() and native.setProperty() (see: Badges can be set for other things that are not push or local notification uses, like new emails, twitter replies, facebook status updates, etc. (even though I’m pretty sure the last two are actually push notifications that are badge only…).
Android (the stock version that Google produces) does not in any shape or form support badges. What you are seeing is one of three things:
1. It’s a widget, not an icon. These would be on the home screen, not under the screen’s with all the icons.
2. The app is using some 3rd party add-on like Nova Launcher. (See: http://forums.androidcentral.com/android-applications/199709-how-guide-global-badge-notifications.html)..)
3. Samsung and Sony seem to have provided some add-on support for their versions of Android. They take the Google version then make their own version with the features they want. (See: http://stackoverflow.com/questions/17510419/how-does-facebook-add-badge-numbers-on-app-icon-in-android and scroll down to the bit about Sony and http://stackoverflow.com/questions/2905542/is-there-a-way-to-add-a-badge-to-an-application-icon-in-android/20213081#20213081 for the bit about Samsung)
From our perspective, to try and support vendor specific features like these, or 3rd party add-ons is not something our small staff of Engineers can take on. There are bigger, more important features that our community needs. If this is really important to you, then you could consider upgrading to an Enterprise license and making the calls yourself into native land to do this. You could also ask someone to build a plugin for you that does this and add it to the 3rd party plugin store.
If you want to read more about this topic, feel free to goto http://google.com and search for: android badge numbers
The first 5 hits should do the trick.
Rob