使用java获取OSX的唯一机器标识符

时间:2015-02-10 19:10:45

标签: java macos licensing

这是参考this SO答案。 它声明下面的代码可用于唯一标识机器:

import java.util.Scanner;

public class GetBiosSerialNumber {

    public static void main(String[] args) throws Throwable {
        // wmic command for diskdrive id: wmic DISKDRIVE GET SerialNumber
        // wmic command for cpu id : wmic cpu get ProcessorId
        Process process = Runtime.getRuntime().exec(new String[] { "wmic", "bios", "get", "serialnumber" });
        process.getOutputStream().close();
        Scanner sc = new Scanner(process.getInputStream());
        String property = sc.next();
        String serial = sc.next();
        System.out.println(property + ": " + serial);
    }
}

但这只适用于Windows。如何使其适用于OSX?如果不可能找到相同的MAC工作方式,那么获得唯一的机器ID是另一种方式吗?(对于硬件锁定应用程序)。 不幸的是我没有MAC PC来测试这个(我正在为客户端制作它),所以请让我知道一种适用于所有OSX设备的方法。

我不想使用MAC地址作为回答上述答案的问题,这表明MAC地址存在一些限制。

这篇文章与this other post不重复。我对这个问题的第一行仅仅提到了对这个问题的回答。

0 个答案:

没有答案