2014-02-13 67 views
-1

我正在开发一个使用客户端服务器体系结构的探索性项目的android应用程序。我想过使用UDID,但现在它被新的“广告ID”取代,但在我的应用程序中,我需要在服务器上存储关于用户的数据,并且每个设备都有一些唯一的ID。 那么我应该使用什么作为UDID的替代? 我检查了打开的UDID,但现在也过时了。 当用户清除/重置他的广告ID时,使用“广告ID”会产生一致性问题。什么是UDID的替代?

请求社区帮助我。

+0

即使你不能使用iPhone的UDID吧! :) – Dolo

+0

可能是这将有助于http://stackoverflow.com/a/5429930/1479798 – Dolo

回答

0

还有identifierForVendor看到更多的苹果docs

+0

谢谢,但我需要替代Android目前 –

0

你可以用谷歌云端通讯平台设备注册。

当您将设备注册正确这给你回寄存器ID that's 独特每个设备。

http://developer.android.com/google/gcm/client.html

UPDATE

您还可以,如果你还没有尝试过了呢,到用户电话管理器来获取设备标识符。

TelephonyManager tManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); 
String uuid = tManager.getDeviceId(); 

在iOS上,你可以试试这个

NSString *UUID = [[NSUUID UUID] UUIDString]; 

这会给你每个应用程序的唯一ID。

+0

我是GCM的新手。我一定会尝试一下。但使用GCM注册ID是一种解决方法。让我们深入挖掘解决方案,无需任何依赖(在这种情况下,GCM)。谢谢。 –

+0

GCM注册ID始终保持相同吗? –

+0

@DipeshMitthalal更新我的答案。 – axierjhtjz

0

我没有太多的想法关于Android:

但检查这些:

GeneratingDeviceSpecificSerialNo & & HEre

在IOS:

-identifierForVendor 
  1. 的ID是相同来自同一开发人员的应用之间。

  2. 删除该团队ID的最后一个应用后删除。

  3. 备份。

欲了解更多信息Here

+0

Google帐户名称不能唯一识别设备。一个人可能拥有多个Android设备,并在他/她的所有设备中使用相同的帐户 –