3

I created an app in which the users can do certain things like comment, earn points etc. I need to store these data in an online database (the app is linked to a website), therefore I need to identify the user somehow. I found the following ways:

  1. Register/login - I think users don't really like this option because it's not comfortable on a mobile phone
  2. AccountManager - I read this has issues
  3. OauthToken - I have just downloaded an app that asked me when opening if I give it my permission to use my email address. This permission may scare off many users. Btw, how does it identify the user?
  4. Storing IMEI - this is not an option since it identifies the device, not the user, and many tablets do not have an IMEI number

Is there another way to identify the user? I want to avoid using GET_ACCOUNTS permission to get the users email address, the best if I could link a unique id without permissons. I think users would not prefer having their email adress appeared on the screen (as an id) when they first launch the application. (please note that I only want an id, no password is required)

Community
  • 1
  • 1
Jani Bela
  • 1,660
  • 4
  • 27
  • 50
  • as you have linked with online database and you want to assign identity to each user,you have to go with any of `4 options`and for sake of simplicity `option 1: register/login` will be better.in registration task you can include very `minimum details like just username and password`.but yes,you have to `check for availability` of that particular desired username by querying online database `before assigning` the username to user. – Mehul Joisar Apr 17 '13 at 20:43
  • If I go with register, doesn't it slow down the app that I might have to go through 500,000 usernames to check if the one that the new user chose exists or not? – Jani Bela Apr 17 '13 at 21:35
  • server side database can handle the process by just one query,so don't worry about time delay.it can be completed within few secs.you can see most of the apps are doing registration for unique user. – Mehul Joisar Apr 18 '13 at 05:05

1 Answers1

2

There's a nice tutorial presenting the best practices for achieving what you want:

http://android-developers.blogspot.com.br/2011/03/identifying-app-installations.html

There's also a similar question here in SO:

Is there a unique Android device ID?

Community
  • 1
  • 1
Flávio Faria
  • 6,575
  • 3
  • 39
  • 59