我的任务是创建一个 Chromebook 应用程序,该应用程序在登录时收集系统信息,例如序列号、用户名、IP 地址等。这个应用程序将在我工作的公司拥有的所有 Chromebook 上运行。我看了另一个几乎问同样问题的问题,只有一个人回答了。那个人建议做一些 Math.Random 调用并将其存储在本地以用作唯一标识符。这对我不起作用。我需要序列号、IP 地址之类的东西。是否有任何 API 可以做到这一点?还是我死在水里?
3 回答
鉴于您对原始问题的评论,这可能不是适合 Stack Overflow 的编码问题。如果您有兴趣跟踪您的资产,您可能希望 Chrome for Business 和 Education 用于您公司的域。在向您的员工提供 Chromebook 之前,您需要对其进行企业注册,这样您就可以通过管理控制台访问 Chromebook 序列号和上次策略同步的时间戳等信息。这是该控制台的外观页面:https: //support.google.com/chrome/a/answer/1698333
同样,这个问题可能应该被删除,因为正确答案与编程无关。但这就是你的答案。
假设当您说“Chromebook 应用程序”是指 Chrome 应用程序时,回答您的问题,答案是否定的。没有任何 API 可以为您提供这种机器识别。
虽然我对扩展程序(与应用程序不同)不太熟悉,但我相信他们的答案是否定的。
您可以调用以下 API 从 Chrome 应用程序获取设备的 IP:
chrome.system.network.getNetworkInterfaces(function(interfaces){
console.log(interfaces);
});
编辑:
上面的代码来自这里:我可以在不使用外部服务的情况下在 chrome 应用程序中获取我的 IP 地址吗?
为了了解 Chrome 设备的 MAC 地址,我检索了 Chrome 设备的 ipV6,然后使用下面链接中的算法来获取 MAC 地址:
https://supportforums.cisco.com/document/100566/understanding-ipv6-eui-64-bit-address
该算法似乎适用于我的 Chrome 设备。也许有人可以确认这个算法是否也适用于他们的 Chrome 设备。