To become viral, an application should provide its core functionality flawlessly. This includes appropriately implementing all user features, UI, functioning, interaction with other apps and devices, and interaction with users. If anything from this list is not quite right, the chances of an application becoming viral decrease.