Many apps will eventually need to store some data on an external server; something that isn't local to the device. For example, if an app provided the ability to sync data from one device to another, this will require some sort of backend. If a game wanted to have an achievements system where players could see how they were rated against each other, it would need some sort of backend as well. In fact, even apps that seem to need no backend often do need something of the sort, even if it is very simple. You can consider, for example, an app that simply needs to update its content from an external server on a regular basis; this server will be the app's backend.
Backends have historically required users to set up their own servers. This is often a costly endeavor, and many small developers may not have the funds needed to support the server and the incoming or outgoing bandwidth. Further, these often introduce security issues that small shops...