J'ai besoin d'obtenir l'adresse MAC de mon appareil Android en utilisant Java. J'ai cherché en ligne, mais je n'ai rien trouvé d'utile.
java
android
mac-address
TSW1985
la source
la source
Réponses:
Comme cela a déjà été souligné dans le commentaire, l'adresse MAC peut être reçue via le WifiManager .
N'oubliez pas non plus d'ajouter les autorisations appropriées dans votre
AndroidManifest.xml
Veuillez vous référer aux changements d' Android 6.0 .
la source
Obtenir l'adresse MAC
WifiInfo.getMacAddress()
ne fonctionnera pas sur Marshmallow et les versions ultérieures, elle a été désactivée et renverra la valeur constante de02:00:00:00:00:00
.la source
la source
en avoir d'autres ici
la source
macAddress
jamaisnull
?Context context
? si oui, n'importe quel contexte devrait fonctionner. developer.android.com/reference/android/content/…J'ai fondé cette solution sur http://robinhenniges.com/en/android6-get-mac-address-programmatically et ça marche pour moi! L'espoir aide!
la source
Son travail avec la guimauve
la source
Vous ne pouvez plus obtenir l'adresse MAC matérielle d'un appareil Android. Les méthodes WifiInfo.getMacAddress () et BluetoothAdapter.getAddress () renverront 02: 00: 00: 00: 00: 00. Cette restriction a été introduite dans Android 6.0.
Mais Rob Anderson a trouvé une solution qui fonctionne pour <Marshmallow: https://stackoverflow.com/a/35830358
la source
Vous pouvez obtenir l'adresse Mac:
Définir l'autorisation dans Menifest.xml
la source
Tiré des sources Android ici . Il s'agit du code réel qui affiche votre ADRESSE MAC dans l'application des paramètres du système.
la source
WifiManager
(ieWifiManager mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
).02:00:00:00:00:00
j'obtiens l'adresse mac et non l'identifiant mac wifi réelEn utilisant cette méthode simple
la source
Je sais que c'est une question très ancienne, mais il existe une autre méthode pour y parvenir. Ci-dessous le code compile mais je ne l'ai pas essayé. Vous pouvez écrire du code C et utiliser JNI (Java Native Interface) pour obtenir l'adresse MAC. Voici l'exemple de code d'activité principale:
Et le fichier de mise en page, main_screen.xml:
Fichier manifeste, je ne savais pas quelles autorisations ajouter, alors j'en ai ajouté.
Implémentation en C de la fonction get_mac_addr.
Et enfin, fichier CMakeLists.txt
la source
Cette
ip link | grep -A1 wlan0
commande fonctionne sur Android 9 à partir de Comment déterminer l'adresse matérielle wifi dans Termuxla source
Je pense que je viens de trouver un moyen de lire les adresses MAC sans l'autorisation LOCATION: exécutez
ip link
et analysez sa sortie. (vous pourriez probablement faire la même chose en regardant le code source de ce binaire)la source