Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to store UserID username in Titanium

Tags:

titanium

My app is similar to facebook. I want to retain the userID/Username upon login screen, so that i could use it at rest of the application for queries online data.

I tried storing it in a javascript object after successful login, but it gets washed away when i move to other screens.

Thanks

like image 763
iMatoria Avatar asked Jun 18 '11 11:06

iMatoria


3 Answers

You can use the App.Properties API.

Example, right from the docs.

Titanium.App.Properties.setString("my_prop","cool");

like image 76
hvgotcodes Avatar answered Oct 15 '22 15:10

hvgotcodes


if(Ti.Facebook.loggedIn) {
    if(Ti.App.Properties.hasProperty('fbid')) {
        var fbid = Ti.App.Properties.getString('fbid');
    }
}

You can use the hasProperty to verify they have logged in in the past and when they do logout you can use the removeProperty so that your app assumes they haven't logged in and starts over.

like image 33
rivenate247 Avatar answered Oct 15 '22 15:10

rivenate247


If you are going to store the information in the properties, you should be aware that the is information persisted on the device.

The use of properties for short term storage IMHO should be avoided if possible.

You have two choices, one store your variables in the Titanium namespace

Titanium.App.credentials = { "user" :"username", "pwd":"password123"};

Or create your own namespace and store your variable there. This will ensure you values are available throughout the application, but not stored on the device.

There is an example on my blog here http://blog.clearlyinnovative.com/post/6519148138/titanium-appcelerator-quickie-global-variables-scopes

like image 29
Aaron Saunders Avatar answered Oct 15 '22 14:10

Aaron Saunders