cmpickle
cmpickle

Reputation: 940

Global Variables Android

I am new to Android app development and would like a little information on global variables. I have done a lot of searching and I understand that in the class files you can declare a global variable(correct me if I'm wrong). I have taken a look at a lot of posts including Android - Global variables? . They have not helped me to understand what I would like to know. My goal is to be able to create variables that will change and remain changed after the app has been terminated. The idea that I have is that I would like to have a main page that then branches to a bunch of other pages and have a global variable that saves what page your are currently visiting so that when you resume you can press a button labeled continue and it will bring you back to the page that you were previously on. If there is a better way than global variables, I am open to alternatives, thanks in advance!

Upvotes: 2

Views: 956

Answers (2)

Thiago Moura
Thiago Moura

Reputation: 358

You can use SharedPreferences to do that. In your activity, use:

SharedPreferences preferences = this.getSharedPreferences("name", Context.MODE_PRIVATE);
preferences.edit().putString("lastPage","mainPage").commit;

To read your saved data, use:

String lastPage = preferences.getString("lastPage");

Read http://developer.android.com/reference/android/content/SharedPreferences.Editor.html to know the types that you can store.

Upvotes: 6

toadzky
toadzky

Reputation: 3846

You can't have variables - global or otherwise - persist after the app has been terminated unless you write them to a permanent storage. In Android this can be done with an ObjectOutputStream to write an object to the filesystem or SharedPreferences, which save key/value pairs for retrieval. You will have to save and set your variables when you need them.

But you shouldn't do global variables anyway.

Upvotes: 1

Related Questions