2

Been researching it for a couple of days, and it seems quite impossible (though highly desired).

I'm Looking for a way to anonymously identify users on our website as they later on run our mobile apps (both iphone and android, actually). At the very basic level, I'd simply generate a UID when someone visits our site, plant a cookie on their device, and then retrieve it later when our app is run. This simple implementation seems to be impossible, because the apps don't get access to the same cookie-base as the browsers (which makes sense, privacy-wise).

Also thought about using HTML5 for this purpose, which doesn't seem to provide any solution.

I Tried going the other way around and using the device id as identifier. However, seems like device id won't be available to the web server when someone visits our site.

There seems to be a perfect disconnect between data accessible from the browser, and accessible from the device itself in native apps.

Has anyone ever found a solution for this scenario?

one eyed dev
  • 429
  • 4
  • 10

2 Answers2

1

As of my experience what you seek is almost impossible to achieve for a third party developer.

As you mention, the web browser - by default - doesn't have file-system access from the javascript context (which is where your web app will most likely run) and the cookies infrastructure isn't exposed to the application context.

What you could do is to write a plugin to the browser which might enable this one way or another. But then there is the technicality that the browsers on mobile devices usually don't support plugins and even if they did; you can't force your web app users to install the plugin :-(

Yet another, and if possible even more unlikely solution would be to try to influence the device browser project (WebKit or whatever project you wish to target) community to implement the functionality for you (good luck) :-)

A third solution and perhaps even the ethically more correct one would be to allow the user to identify him/her self optionally when using your device client application. Your client iPhone/Android application would then have a "Identify me as a client user"-button. This would of course require you to allow the user to choose a key (an e-mail address?) of his/her own when entering the web app. You'd likely need to store the key on the web server opposed to the client browser cookies.

Hope this gives you some further ideas.

Cheers

dbm
  • 9,888
  • 6
  • 41
  • 55
0

Here are some things I think would work (untested):

  • You can check if the user has a google account login in the browser and on the phone.
  • Another way would be to have them log in in both apps
  • Register a special url-handler which opens your android-app with an user-identifier which gets called by the webapp (see this question)

Edit: I over-read the IPhone part - #1 and #3 those answers are Android only (I think).

Community
  • 1
  • 1
whlk
  • 14,969
  • 13
  • 64
  • 93