Android 安卓游戏:高分

Android 安卓游戏:高分,android,android-2.2-froyo,Android,Android 2.2 Froyo,我想让我的Android游戏记录全球高分 为此,我的服务器上的SQL表中的每个用户都需要有一些唯一的标识符 我的问题是,Android SDK提供了什么 Settings.Secure.ANDROID是我的最佳选择吗?不能保证ANDROID是唯一的。我建议您的用户指定一个自己的名字,只要这个名字还没有在您的服务器上注册,他们就会得到它——故事结束了。如果您想让他们能够通过设备擦除/传输保留名称,那么您也可以允许他们指定密码,但严格来说,游戏高分录制器可能不需要它。如果用户没有指定UUID,您可以

我想让我的Android游戏记录全球高分

为此,我的服务器上的SQL表中的每个用户都需要有一些唯一的标识符

我的问题是,Android SDK提供了什么


Settings.Secure.ANDROID是我的最佳选择吗?

不能保证ANDROID是唯一的。我建议您的用户指定一个自己的名字,只要这个名字还没有在您的服务器上注册,他们就会得到它——故事结束了。如果您想让他们能够通过设备擦除/传输保留名称,那么您也可以允许他们指定密码,但严格来说,游戏高分录制器可能不需要它。

如果用户没有指定UUID,您可以尝试为用户生成UUID。

不要使用Secure.ANDROID\u ID

您会发现大量2.1或以下的手机,以及大多数模拟器和自定义ROM都具有相同的ID:9774d56d682e549c


测试此值,然后使用二次识别措施。。。或者跳过它并使用UUID,如果您仍在寻找解决方案,系统看起来很匹配。提供了一个简单的解决方案,可以在游戏中添加可定制的排行榜,使用起来非常简单。

我知道这是一个迟来的回复,但它可能会帮助仍将阅读此帖子的人。 实际上,这是一个讨论独特android id的好帖子:

许多开发人员使用的解决方案是以标准方式检索唯一的android id:

如果最后一个不存在,则使用其他设备唯一参数,如IMEI、WIFI MAC等

如果您不想从头开始实施排行榜和社交层,我们很乐意帮助您整合我们的


我当然是来自Skiller,这是我的全部信息。

Hi@Jesse,请查看下面我的答案,我刚刚意识到你可能不会通过这种方式收到我答案的通知。告诉我你的想法。
Secure.getString(context.getContentResolver(), Secure.ANDROID_ID);
Settings.System.getString(context.getContentResolver(), Settings.System.ANDROID_ID);