I'm developing an application in which one of the function is a voice recording. User can choose among of 4 categories. Each category consists of strings populated from an array. One string / word is displayed at the time on the screen. Once it's recorded he or she can swipe a screen to see the next word. The next word is of course next item from an array. During the runtime I keep track of the actual position by saving it in the variables. However when a user quits an application of course all the variables are reseted and when come back, he or she has to start over again from the first word. I know that I have to persist the current position in the file or db to be able to remember the last state. My question is what is the best choice in this case of saving it? Besides of the current position each user will also have assign a number (kind of feedback on ebay or reputation in stackoverflow) that I would also have to keep track of. Is shared preferences a good choice or maybe it's better to create a SQLite db? Please advise. Thank you.