I’m fairly new in Android/Java programming, so some of the basic stuff is still quite confusing. So, lets say my application gets all data (articles) it requires from external XML files, it parses them to data models (Article class) and those articles will be used (displaying in lists or single article) all over the application for all it’s lifecycle.
Where should I keep them? Can I create singleton class with an array containing all the articles I’ve parsed? Or should I save them to database and then query it on demand? (that sounds like too much work, I don’t need to cache them for now) What’s the best practice here?
Keep them in Application. This is a base class of any android application and it’s alive during the whole lifetime of the application, whereas Activities are killed when not shown or orientation is changed.
You have to declare
android:namein your AndroidManifest.xml:Edited:
This is also relevant: How do I pass data between Activities/Services within a single application?