不再支持如何解决UIManager ['AIRMapLite']。 (带有白色徽标的白色屏幕)

时间:2019-03-12 09:25:30

标签: react-native android-mapview

最近两天我无法解决此问题。我已经完成搜索并阅读了mapview的文档,但仍然无法解决。

Error

我将向您展示我的代码和执行的情况。

我的导入

import MapView from 'react-native-maps';

我的功能

    export default class App extends Component {
  render() {
    return (
      <View style={styles.container}>
        <MapView
          zoomEnabled = {true}
          style={ styles.map }
          initialRegion={{
            latitude: 37.78825,
            longitude: -122.4324,
            latitudeDelta: 0.0922,
            longitudeDelta: 0.0421,
          }}
        />
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
  },
  welcome: {
    fontSize: 20,
    textAlign: 'center',
    margin: 10,
  },
  map: {
    position: 'absolute',
    top: 0,
    left: 0,
    right: 0,
    bottom: 0,
    ...StyleSheet.absoluteFillObject,
  },
  instructions: {
    textAlign: 'center',
    color: '#333333',
    marginBottom: 5,
  },
});

最近是Google的激活密钥

<meta-data 
        android:name="com.google.android.geo.API_KEY"
        android:value="i make it secret first"
      />

Activate

这是我的控制台中的错误,我不知道发生了什么问题

    if (__DEV__) {
  Object.keys(UIManager).forEach(viewManagerName => {
    if (!UIManagerProperties.includes(viewManagerName)) {
      if (!viewManagerConfigs[viewManagerName]) {
        viewManagerConfigs[viewManagerName] = UIManager[viewManagerName];
      }
      defineLazyObjectProperty(UIManager, viewManagerName, {
        get: () => {
          console.warn(
            `Accessing view manager configs directly off UIManager via UIManager['${viewManagerName}'] ` +
              `is no longer supported. Use UIManager.getViewManagerConfig('${viewManagerName}') instead.`,
          );
          return UIManager.getViewManagerConfig(viewManagerName);
        },
      });
    }
  });
}

1 个答案:

答案 0 :(得分:0)

这是react-native-maps中目前已知的问题。 issue最初于2018年12月创建。

与依赖关系如何实现实际上是一个问题。因此,除了派生仓库和自己解决潜在问题外,您实际上无能为力。

截至2019年3月11日,此问题现已修复,不再是问题。该修复程序已包含在下一版本中。因此,react-native-maps的下一个发行版发布之后,您将不再会遇到警告。

https://github.com/react-native-community/react-native-maps/issues/2620#issuecomment-471650689

  

主要版本上已修复,应该包含在下一个版本中

如果您不能等待问题解决,而您想隐藏YellowBox警告,则可以使用以下命令

import {YellowBox} from 'react-native';

然后在您的render方法中,我通常在App.js中执行此操作,因此很容易跟踪隐藏了哪些对象。

render() {
  YellowBox.ignoreWarnings(['Warning: ...']);  // <- insert the warning text here you wish to hide. 
  return (
    //cool ui stuff
  );
}

它不会从您的控制台中删除警告,但会删除与该错误相关的所有YellowBox警告。