First, it would be good to know a little bit more about the level of your Spanish. You would probably need several apps since most of them teach only vocabulary or only grammar etc. A good one for grammar is called "Spanish Touch Trainer". It helps you with sentence structure, conjugation, and other grammar stuff. Another one for building vocabulary is called "Gengo Quiz", it takes you from beginner´s level to Upper Intermediate. But don't forget! Nothing substitutes a good teacher.