I love the idea of retainers, because it offers the freelancer a chance at a steady income. However, clients generally don't want to pay a retainer to someone doing new development. A retainer is probably more appropriate if you're maintaining an existing app that's already in production. That said, the amount of a retainer is totally negotiable based on your special knowledge and skills. If you wrote the app, you're in an excellent bargaining position. Go for it!