如何在expo react原生应用中获取设备ID

rqdpfwrv  于 2023-02-16  发布在  React
关注(0)|答案(2)|浏览(237)

我正在实现API来连接应用程序与服务器。我必须在那里使用deviceId。如here中所述,我们可以使用第三方库“react-native-device-info”。但当我使用它时,我收到了错误,如所附的屏幕截图。根据错误,它说要进行链接,但我使用的是react版本0.62,所以自动链接是存在的。所以会有什么问题呢?花了太多的时间来搜索它,但直到现在我没有得到一个适当的解决方案。

biswetbf

biswetbf1#

react-native-device-info库无法在Expo中工作,因为它需要链接本机模块,因此出现错误。它只能在纯react本机应用中工作。
您可以通过expo本身检查:曝光装置
希望有帮助,尽管怀疑吧

ao218c7q

ao218c7q2#

即使在Expo项目中,你也可以使用react-native-device-info,你需要用一个内置react-native-device-info库的定制版本来替换Expo Go。
默认情况下,Expo Go在Android上使用,iPhone Emulators暗示managed workflow(即仅使用expo-*模块)。但是,使用任何纯react-native-*库福尔斯bare workflow,因此您无法使用Expo Go -您看到的错误来自Expo Go,而不是您的应用。

  1. Build your custom Expo app,包括expo-dev-clientreact-native-device-info库,并将其安装到您的模拟器上。这需要在添加react-native-*库时完成一次。
    1.现在,继续向项目中添加使用react-native-device-info特性的代码。
  2. npx expo start --dev-client并选择您的模拟器。Your custom build will be launched,您可以像在Expo Go中一样进行实时更改。
    一定要查看Expo中关于Development Builds的部分,不用说,我已经 * 成功地 * 在我的Expo项目中使用了react-native-device-info,因为expo-device无法提供我所需要的。

相关问题