How Can An Application Server Associate Google Accounts To A User's Device?
I want users to be able to enter data from a web server and/or native PC app and transfer it to their chosen Android device in much the same way that Google Play's install on devic
Solution 1:
You should use the user_id
that is returned from the Google account server after registration to uniquely identify each user. Email addresses shouldn't be used for a number of reasons:
- Accessing email addresses may require additional permissions from the user and dissuade users from using your service/app because of trust issues.
- Adds liability for securing database of users' email addresses
- Users may change their email addresses in Google accounts but cannot change their user IDs.
- Users can associate one email address with more than one user ID, so it is not necessarily unique.
The following sequence diagram shows the initial registration from client Android app:
The next diagram shows what happens when a client wants to access his device from a browser:
Note that although not shown, the client Android app can now communicate back to the client browser if needed via the application server.
Solution 2:
The user_id
you get from the device when you register with GCM should be the same as the user_id you get with your OAuth token for your app. Just store the OAuth token and Registration ID in your user repository, associating both with the user_id.
Post a Comment for "How Can An Application Server Associate Google Accounts To A User's Device?"