¿Cómo obtener la dirección MAC del dispositivo en Flutter?

Flutter SDK es un kit de desarrollo de software de código abierto de Google para desarrollar aplicaciones para múltiples plataformas desde una única base de código. A veces, su aplicación necesita saber la dirección MAC del dispositivo. La dirección MAC (Media Access Control) es el identificador único de un dispositivo en una red LAN.

Enfoque: use el paquete flutter get_mac para obtener la dirección MAC del dispositivo del cliente.

Implementación paso a paso

Paso 1: navegue hasta el archivo pubspec.yaml

Abra su proyecto en VS Code y navegue hasta el archivo pubspec.yaml :

Paso 2: Agregar la dependencia

Agregue el paquete de dardos get_mac como dependencia y guarde el archivo.

Paso 3: Descarga las dependencias

Abra el terminal en el código VS y ejecute el siguiente comando para descargar las dependencias agregadas.

flutter pub get

Paso 4: código de ejemplo

Usaremos la propiedad macAddress de GetMac para obtener la dirección MAC del dispositivo. Esto funciona con dispositivos iOS y Android.

Sintaxis:

String macAddress = aguardar GetMac.macAddress ;

Dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get_mac/get_mac.dart';
  
void main() {
  runApp(const MyApp());
}
  
class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);
  
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'MAC Finder',
      theme: ThemeData(
        primarySwatch: Colors.green,
      ),
      home: const Home(),
    );
  }
}
  
class Home extends StatefulWidget {
  const Home({Key? key}) : super(key: key);
  
  @override
  State<Home> createState() => _HomeState();
}
  
class _HomeState extends State<Home> {
  String _deviceMAC = 'Click the button.';
  // Platform messages are async in nature
  // that's why we made a async function.
  Future<void> initMacAddress() async {
    String macAddress;
  
    try {
      macAddress = await GetMac.macAddress;
    } on PlatformException {
      macAddress = 'Error getting the MAC address.';
    }
  
    setState(() {
      _deviceMAC = macAddress;
    });
  }
  
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('MAC address of a device'),
      ),
      body: Center(
        child: Column(
          mainAxisSize: MainAxisSize.max,
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Text(
              _deviceMAC,
              style: const TextStyle(fontSize: 26, fontWeight: FontWeight.bold),
            ),
            ElevatedButton(
              onPressed: () {
                initMacAddress();
              },
              child: const Text("Get MAC Address"),
            ),
          ],
        ),
      ),
    );
  }
}

Producción:

Output

Nota: el paquete get_mc no admite seguridad nula. Es posible que deba usar: flutter run –no-sound-null-safety para ejecutar la aplicación.

Publicación traducida automáticamente

Artículo escrito por vpsop y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *