Search code examples
androidiosnsuserdefaultscode-translation

Android equivalent of NSUserDefaults in iOS


I'd like to save some simple data. On the iPhone, I can do it with NSUserDefaults in Objective-C.

What is the similar command here in Android?

I'm just saving a few variables, to be reused as long as the application is installed. I don't want to use a complicated database just to do that.


Solution

  • This is the most simple solution I've found:

    //--Init
    int myvar = 12;
    
    
    //--SAVE Data
    SharedPreferences preferences = context.getSharedPreferences("MyPreferences", Context.MODE_PRIVATE);  
    SharedPreferences.Editor editor = preferences.edit();
    editor.putInt("var1", myvar);
    editor.apply();
    
    
    //--READ data       
    myvar = preferences.getInt("var1", 0);  
    

    Where 'context' is the current context (e.g. in an activity subclass could be this).