Salut à tous !!!
Alors voila, c'est très simple, j'ai besoin d'avoir un identifiant unique type IMEI sur chaque téléphone, que l'utilisateur peut connaitre (il en a besoin pour register l'application), et que je peux récupérer via mon code J2ME.
En ce qui concerne l'IMEI, le problème est simple, c'est constructeur-dépendant, et pour la plupart, ça ne marche pas.
Voilà pour l'instant ce que je tente (si ça peut en aider certains, tant mieux) :
Et à première vue, ça doit marcher sur 10% des devices...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85 public String getIMEI() { String out = null; out = System.getProperty("com.IMEI"); if(out == null) out = System.getProperty("com.imei"); if(out == null) out = System.getProperty("phone.IMEI"); if(out == null) out = System.getProperty("phone.imei"); if(out == null) out = System.getProperty("IMEI"); if(out == null) out = System.getProperty("imei"); if(out == null) out = System.getProperty("com.lge.IMEI"); if(out == null) out = System.getProperty("com.lge.imei"); if(out == null) out = System.getProperty("com.motorola.IMEI"); if(out == null) out = System.getProperty("com.motorola.imei"); if(out == null) out = System.getProperty("com.nokia.IMEI"); if(out == null) out = System.getProperty("com.nokia.imei"); if(out == null) out = System.getProperty("com.nokia.mid.imei"); if(out == null) out = System.getProperty("com.samsung.IMEI"); if(out == null) out = System.getProperty("com.samsung.imei"); if(out == null) out = System.getProperty("com.siemens.IMEI"); if(out == null) out = System.getProperty("com.siemens.imei"); if(out == null) out = System.getProperty("com.sonyericsson.IMEI"); if(out == null) out = System.getProperty("com.sonyericsson.imei"); if(out == null) out = app.getAppProperty("com.IMEI"); if(out == null) out = app.getAppProperty("com.imei"); if(out == null) out = app.getAppProperty("phone.IMEI"); if(out == null) out = app.getAppProperty("phone.imei"); if(out == null) out = app.getAppProperty("IMEI"); if(out == null) out = app.getAppProperty("imei"); if(out == null) out = app.getAppProperty("com.lge.IMEI"); if(out == null) out = app.getAppProperty("com.lge.imei"); if(out == null) out = app.getAppProperty("com.motorola.IMEI"); if(out == null) out = app.getAppProperty("com.motorola.imei"); if(out == null) out = app.getAppProperty("com.nokia.IMEI"); if(out == null) out = app.getAppProperty("com.nokia.imei"); if(out == null) out = app.getAppProperty("com.nokia.mid.imei"); if(out == null) out = app.getAppProperty("com.samsung.IMEI"); if(out == null) out = app.getAppProperty("com.samsung.imei"); if(out == null) out = app.getAppProperty("com.siemens.IMEI"); if(out == null) out = app.getAppProperty("com.siemens.imei"); if(out == null) out = app.getAppProperty("com.sonyericsson.IMEI"); if(out == null) out = app.getAppProperty("com.sonyericsson.imei"); if(out != null) return out; else return "Impossible to get IMEI for this phone"; }
J'ai alors opté pour une approche alternative : l'adresse bluetooth des téléphones possédant la JSR82, cela se fait très simplement en J2ME :
Mais par contre, aucune idée de comment l'utilisateur peut récupérer manuellement cette info.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public String getBTA() { try { return LocalDevice.getLocalDevice().getBluetoothAddress(); } catch (BluetoothStateException ex) { ex.printStackTrace(); } return "No bluetooth on this device"; }
(a part pour les nokia en faisant *#2820#)
Any idea ??
Qui plus est, même en combinant ces deux méthodes, je suis loin de couvrir tous les devices ...
Par conséquent, si vous avez la moindre idée d'identifiant unique possible (même un truc con, je prends toute aide avec le sourire dans ce monde cruel et TERRIBLEMENT chaud )
Autrement dit si vous avez la liste des secret sharp codes genre *#06#, faites tourner aussi
Merci par avance,
Skip
Partager