1

我需要返回运行我的 React Native 应用程序(Android 智能电视应用程序)的设备的 IP 地址。我正在使用 react-native-device-info 这使我能够获得模型、制造商和操作系统。但是我无法获取IP地址。

这是我的代码

deviceInfo = DeviceInfo.getIPAddress().then(ip => {
  return ip;
});

但是在前端它显示为 [object Object]。我可以在控制台中看到它正在返回一个像这样的对象:

wifi:
  _40: 0
  _55: null
  _65: 0
  _72: null

我本来希望只返回一串正确的 IP 地址。

我还在我的 AndroidManifest.xml 中添加了正确的权限。

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

另外值得注意的是,我将信息传回value: ${JSON.stringify(deviceInfo)}

以前有人遇到过这个问题吗?

4

1 回答 1

1

我使用了以下库: https ://www.npmjs.com/package/react-native-network-info

它工作正常,下面是代码:

// Get IPv4 IP (priority: WiFi first, cellular second)
NetworkInfo.getIPV4Address().then(ipv4Address => {
  console.log(ipv4Address); //result e.g 192.168.1.100
});
于 2020-07-13T08:40:35.370 回答