Unity3D获取设备MAC地址
👉前言
mac地址也称为物理(或硬件)地址,是分配给计算机的nic(网络接口卡)的唯一标识符,存储在硬件中;nic有助于将计算机与网络中的其他计算机连接,而mac地址对于所有nic都是唯一的。
MAC地址的格式
MAC地址的编号是以十六进制格式进行唯一格式化,格式为六组两个数字或字符,即12位十六进制数字(48位或6字节长),用连字符(或分号)分隔。MAC地址的示例:
F0-FF-HK-HH-LL-OO
大家好,我是心疼你的一切,不定时更新Unity开发技巧,觉得有用记得一键三连哦。
欢迎点赞评论哦.
下面就让我们进入正文吧 !
👉一、PC的mac地址
👉1-1、第一种cmd查看mac地址
打开控制台快捷键 Ctrl+R 打开输入cmd
之后输入ipconfig/all之后即可显示一大堆信息
https://i-blog.csdnimg.cn/direct/8dd94ca066bc4a11b90ef956aee7c651.png)
箭头指向的就是mac地址
👉1-2、代码获取PC和ios的mac地址
  //中间带-的
    public string GetMacAddress()
    {
        string macAddress = "";
        NetworkInterface[] networkInterfaces = NetworkInterface.GetAllNetworkInterfaces();
        foreach (var item in networkInterfaces)
        {
            if (item.Description == "en0")
            {
                macAddress = item.GetPhysicalAddress().ToString();
                break;
            }
            else
            {
                macAddress = item.GetPhysicalAddress().ToString();
                if (macAddress != "")
                {
                    break;
                }
            }
        }      
        return SeparateStringBy2(macAddress);
    }
    public static string SeparateStringBy2(string input)
    {
        if (string.IsNullOrEmpty(input))
        {
            return input;
        }
        StringBuilder result = new StringBuilder();
        int length = input.Length;
        for (int i = 0; i < length; i += 2)
        {
            if (i + 2 < length)
            {
                result.Append(input.Substring(i, 2));
                result.Append('-');
            }
            else
            {
                result.Append(input.Substring(i));
            }
        }
        return result.ToString().Trim();
    }
第一个方法获取mac地址的,第二个方法是在地址上加 — 的,看你们的需求,有需要就加,没有需要就不加
上述方法适用于PC和ios
👉二、Android的mac获取方法(untiy)
unity有一个自带的API
参考资料:官方API文档
代码如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class CeShiMac : MonoBehaviour
{
    public Text text;
   
    private void Start()
    {
        // //设备唯一标识符
        string UDID = SystemInfo.deviceUniqueIdentifier;
        text.text = UDID;       
    }
}
👉二、Android手机的串码获取方法(Android系统)
设备序列号(Serial Number, SN)
String serialNum = android.os.Build.SERIAL;
制造商 (Manufacturer)
String manufacturer = android.os.Build.MANUFACTURER;
型号(Model)
String model = android.os.Build.MODEL;
品牌(Brand)
String brand = android.os.Build.BRAND;
设备名 (Device)
String device = android.os.Build.DEVICE;
👉三、Android手机的唯一标识码获取方法(Android系统)
唯一标识码这东西在网络应用中非常有用,例如检测是否重复注册之类的。
import android.provider.Settings.Secure;
private String android_id = Secure.getString(getContext().getContentResolver(), Secure.ANDROID_ID);
👉四、Android手机的Mac地址的获取方法(Android系统)
代码如下:
 String getMac() {
                String macSerial = null;
                String str = "";
                try {
                        Process pp = Runtime.getRuntime().exec(
                                        "cat /sys/class/net/wlan0/address ");
                        InputStreamReader ir = new InputStreamReader(pp.getInputStream());
                        LineNumberReader input = new LineNumberReader(ir);
                        for (; null != str;) {
                                str = input.readLine();
                                if (str != null) {
                                        macSerial = str.trim();// 去空格
                                        break;
                                }
                        }
                } catch (IOException ex) {
                        // 赋予默认值
                        ex.printStackTrace();
                }
                return macSerial;
        }
👉总结
本次总结的就是mac地址的获取,有需要会继续添加新的
如能帮助到你,就帮忙点个赞吧,三连更好哦,谢谢
你的点赞就是对博主的支持,有问题记得留言评论哦!
不定时更新Unity开发技巧,觉得有用记得一键三连哦。么么哒
- 点赞
 - 收藏
 - 关注作者
 
            
           
评论(0)