【发布时间】:2019-08-19 10:23:44
【问题描述】:
我需要返回运行我的 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)} 将信息传回
以前有人遇到过这个问题吗?
【问题讨论】:
-
使用 react-native-network-info:github.com/pusherman/react-native-network-info
-
您可以尝试使用短暂的睡眠来完成获取 IP 的任务,然后再引用它的返回。这种方式取决于它调用定时器线程的次数来保证它的返回。并且捕获异常也可能会有所帮助。
标签: android react-native react-native-device-info