我在DB中存储Android和iOS设备令牌。以下是设备令牌保存在数据库中的几个示例。
如何区分特定设备令牌是用于Android还是iOS设备?
答案 0 :(得分:7)
我建议您将其他信息与令牌一起发送到服务器。例如,有关令牌从哪个设备类型注册的信息,即Android或iOS。一个合适的解决方案是设置一个用于注册令牌的REST服务。如果您实施此解决方案,您将来会证明未来Android / iOS令牌长度的变化。存储的其他有用信息是用户ID或类似信息。
我认为你确实在谈论你自己存储令牌的数据库。
答案 1 :(得分:2)
Iphone设备令牌
设备令牌是32字节二进制形式,对于iphone来说意味着32个,对于android来说意味着15个
答案 2 :(得分:0)
您发布的第一个哈希是该设备的IMEI,因此它出现在Android和iO上。 IMEI只包含数字!
在Android上,如果使用以下代码,将为您提供唯一ID:
Secure.getString(getApplicationContext().getContentResolver(), Secure.ANDROID_ID);
看起来像那样:9774d56d682e549c
,这是16个字符长。
在iOS设备上,您可以在iTunes或类似这样的网站上获取您的UDID:http://whatsmyudid.com/
此UDID是32位数,看起来像这样:294913EC-6100-42E8-8C2D-E9F68F286ADE
。
根据您在邮件中发布的IMEI,我们可以获取您的手机信息,例如品牌,型号和许多其他内容。看看那个地址:http://www.imei.info/?imei=359092050465370
答案 3 :(得分:-1)
您需要实施GCM才能这样做。
请点击此链接了解详细说明。
String rid=GCMRegistrar.getRegistrationId(getApplicationContext());
答案 4 :(得分:-2)
获取 IMEI (国际移动设备标识符):
public String getIMEI(Activity activity) {
TelephonyManager telephonyManager = (TelephonyManager) activity
.getSystemService(Context.TELEPHONY_SERVICE);
return telephonyManager.getDeviceId();
}
获取设备唯一ID :
public String getDeviceUniqueID(Activity activity){
String device_unique_id = Secure.getString(this.getContentResolver(),
Secure.ANDROID_ID);
return device_unique_id;
}