通过 react-native-web 找出 OS

Find out OS via react-native-web

我已经在整个互联网上搜索了标题中的问题,但没有找到任何内容。 我正在使用带有 expo 的 React Native Web 并试图找出 Web 应用程序的用户正在使用哪个操作系统。

我遇到了 Platform.OS 函数,但是这个函数并没有解决我刚才描述的问题。 Platform.OS returns 'web' 对于 Android 和 IOS。

btw I'm using: 
react-native-version: 0.64.1
expo version: 40.0.0
react-native-web version: 0.16.2

Platform.OS 的主要目的是区分设备(如 iOS、android 和网络)。

您可能想查看 react-native-device-info :https://github.com/react-native-device-info/react-native-device-info

那里有很多方法可以获取有关 运行 您的应用的设备的一些信息。 网络上不支持很多方法,您在文档中有一个 table 解释每种设备支持或不支持的方法。

不过你可以使用 getBaseOs(),例如在我的 RN web 项目中它会 return Mac OS,你不会得到完整的 OS 版本不过

你也可以使用 getUseAgent(),它会给你这样的东西:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36 (but this will be different for each browser).