[ 
https://issues.apache.org/jira/browse/CB-1047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stephen J Fuhry updated CB-1047:
--------------------------------

    Description: 
There are many documented situations where the following does not really return 
a unique identifier ([link to cordova 
source|https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-android.git;a=blob;f=framework/src/org/apache/cordova/Device.java#l173]):

{code:java}
android.provider.Settings.Secure.ANDROID_ID
{code}

Would it make sense to implement a solution like this?

http://android-developers.blogspot.com/2011/03/identifying-app-installations.html
see also: http://stackoverflow.com/a/2853253/111033

I've used the above mentioned solution in native Android applications without 
issue.

It *might* make sense to offer this as a value completely separate from 
device.uuid.. there are many reports that some hardware vendors are actually 
populating ANDROID_ID with a manufacturer ID (i.e. ANDROID_ID returns a value, 
but it is not unique between devices of the same make / model! How deceptive.).

Perhaps it could be offered as:

{code:javascript}
device.install_id
{code}

or something so that developers could opt-in to use it? This way it wouldn't 
break BC for those who are interested in maintaining device or install ids from 
previous versions. Then, you could get a guaranteed unique id by doing:

{code:javascript}
var deviceId = ('install_id' in device ? device.uuid : device.install_id);
{code}

  was:
There are many documented situations where the following does not really return 
a unique identifier ([link to cordova 
source|https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-android.git;a=blob;f=framework/src/org/apache/cordova/Device.java#l173]):

{code:java}
android.provider.Settings.Secure.ANDROID_ID
{code}

Would it make sense to implement a solution like this?

http://android-developers.blogspot.com/2011/03/identifying-app-installations.html
see also: http://stackoverflow.com/a/2853253/111033

I've used the above mentioned solution in native Android applications without 
issue.

It *might* make sense to offer this as a value completely separate from 
device.uuid.. there are many reports that some hardware vendors are actually 
populating ANDROID_ID with a manufacturer ID (i.e. ANDROID_ID returns a value, 
but it is not unique between devices of the same make / model! How deceptive.).

Perhaps it could be offered as:

{code:javascript}
device.install_id
{code}

or something so that developers could opt-in to use it? This way it wouldn't 
break BC for those who are interested in maintaining device or install ids from 
previous versions. Then, you could get a guaranteed unique id by doing:

{code:javascript}
var deviceId = (device.install_id === null ? device.uuid : device.install_id);
{code}

    
> Android UUID can sometimes be undefined (or otherwise not unique) because of 
> limitations in ANDROID_ID
> ------------------------------------------------------------------------------------------------------
>
>                 Key: CB-1047
>                 URL: https://issues.apache.org/jira/browse/CB-1047
>             Project: Apache Cordova
>          Issue Type: Wish
>          Components: Android
>    Affects Versions: 1.9.0
>            Reporter: Stephen J Fuhry
>            Assignee: Joe Bowser
>
> There are many documented situations where the following does not really 
> return a unique identifier ([link to cordova 
> source|https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-android.git;a=blob;f=framework/src/org/apache/cordova/Device.java#l173]):
> {code:java}
> android.provider.Settings.Secure.ANDROID_ID
> {code}
> Would it make sense to implement a solution like this?
> http://android-developers.blogspot.com/2011/03/identifying-app-installations.html
> see also: http://stackoverflow.com/a/2853253/111033
> I've used the above mentioned solution in native Android applications without 
> issue.
> It *might* make sense to offer this as a value completely separate from 
> device.uuid.. there are many reports that some hardware vendors are actually 
> populating ANDROID_ID with a manufacturer ID (i.e. ANDROID_ID returns a 
> value, but it is not unique between devices of the same make / model! How 
> deceptive.).
> Perhaps it could be offered as:
> {code:javascript}
> device.install_id
> {code}
> or something so that developers could opt-in to use it? This way it wouldn't 
> break BC for those who are interested in maintaining device or install ids 
> from previous versions. Then, you could get a guaranteed unique id by doing:
> {code:javascript}
> var deviceId = ('install_id' in device ? device.uuid : device.install_id);
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to