2013-02-28 4 views
2

Selon la documentation Flurry,flurry - Comment flurry détecter de nouveaux utilisateurs?

« Nouveaux utilisateurs

Un nouvel utilisateur est un utilisateur qui vient de commencer à utiliser votre application. Les utilisateurs sont identifiés par des ID de téléphone unique (qui varient selon la plate-forme) à Assurez-vous qu'un utilisateur est en fait un nouvel utilisateur unique et pas seulement une réinstallation de . "

Quelqu'un peut-il élaborer la partie "unique phone IDs (which vary by platform)"?

Merci.

+0

http://en.wikipedia.org/wiki/International_Mobile_Station_Equipment_Identity l'identifiant unique de l'appareil est le numéro imei, ce qui est différent pour tous les appareils. – Arnold

+1

@Arnold: Parfois, peu d'appareils ne retournent pas l'IMEI. Par exemple des comprimés. –

Répondre

1

Pour Android, les ID uniques sont susceptibles d'être l'un des:

  • Appareil numéro IMEI (ne fonctionne que pour les appareils avec emplacements pour carte SIM)
  • Bluetooth/WiFi adresse MAC (présente sur la majorité des appareils)
  • Secure.ANDROID_ID (techniquement présent sur tous les appareils, mais son connu pour être bogué dans certaines versions)
0

Vous n'avez vraiment pas besoin de faire quoi que ce soit pour cela. A propos de comment flurry le fait, je ne suis pas tout à fait sûr, mais je suppose qu'ils prennent juste quelques informations spécifiques à l'appareil et créer un propre numéro de flurry à partir de cela.

Étant donné que ces informations peuvent différer de la plate-forme (par exemple pour Apple, vous pouvez prendre l'UDID pendant une longue période) cela peut très par plate-forme.

3

ID unique Pseudo-, qui fonctionne sur tous les appareils Android. Certains périphériques n'ont pas de téléphone (par exemple, les tablettes) ou, pour une raison quelconque, vous ne souhaitez pas inclure l'autorisation READ_PHONE_STATE. Vous pouvez toujours lire des détails tels que la version ROM, le nom du fabricant, le type de CPU et d'autres détails matériels, ce qui convient bien si vous souhaitez utiliser l'ID pour une vérification de clé série ou à d'autres fins générales. L'ID ainsi calculé ne sera pas unique: il est possible de trouver deux appareils avec le même ID (basé sur le même matériel et l'image ROM) mais les chances dans les applications du monde réel sont négligeables. A cet effet, vous pouvez utiliser la classe de construction:

String m_szDevIDShort = "35" + //we make this look like a valid IMEI 
      Build.BOARD.length()%10+ Build.BRAND.length()%10 + 
      Build.CPU_ABI.length()%10 + Build.DEVICE.length()%10 + 
      Build.DISPLAY.length()%10 + Build.HOST.length()%10 + 
      Build.ID.length()%10 + Build.MANUFACTURER.length()%10 + 
      Build.MODEL.length()%10 + Build.PRODUCT.length()%10 + 
      Build.TAGS.length()%10 + Build.TYPE.length()%10 + 
      Build.USER.length()%10 ; //13 digits 

La plupart des membres sont des chaînes de compilation, ce que nous faisons ici est de prendre leur longueur et le transformer par modulo en un chiffre. Nous avons 13 chiffres de ce type et nous en ajoutons deux de plus en avant (35) pour avoir le même ID de taille que l'IMEI (15 chiffres). Il y a d'autres possibilités ici, regardez ces chaînes.

Renvoie quelque chose comme: 355715565309247.

Aucune autorisation spéciale n'est requise, ce qui rend cette approche très pratique.