项目中有用到IP地址采集 用的是html5 webView的方式 请参考:react native 获取设备 真实ip地址 和 ip 映射的地理位置
这里留下的坑是 Android的release包 中获得ip是没反应的
一开始以为是Android WebView的缓存问题,后来改了还是没法获得,但是在开发中却可以拿到,很奇快.....
后来查了下原因原来是:
由于React Native打包资源时不支持html资源的自动打包,所以我们得手动将html资源放到asset目录下,没有的话就自己创建
把静态资源放在assets目录下
使用的时候:ios正常引入Android改成一下方式取
<WebView
onMessage={e => this.getDataFormWebview(e)}
source={
Platform.OS === 'ios'?
require('../components/ipadress.html'):
{uri: 'file:///android_asset/ipadress.html'}
}
javaScriptEnabled={true}
androiddomStorageEnabled={false}
/>
这个问题 就类似 RN 组件echarts图标的问题,必须要把这个html静态资源单独放在assets下 ,当时也遇到过这个问题,但是没想起来,也是尴尬了。。。。
好了,希望大家少走点坑。