当前位置: 首页 > 知识库问答 >
问题:

Android Emulator不在屏幕上显示谷歌地图

郎泰平
2023-03-14

我一直在努力跟进https://github.com/airbnb/react-native-maps教程我尝试了他们说的一切,但在我的android studio模拟器上得到了一个空白屏幕。

我的代码:

import React, { Component } from 'react';
import {
  AppRegistry,
  StyleSheet,
  Text,
  View
} from 'react-native';

import MapView from 'react-native-maps';

export default class ReactNativeMaps extends Component {
  render() {
   const { region } = this.props;
   console.log(region);

   return (
     <View style ={styles.container}>
       <MapView
         style={styles.map}
         region={{
           latitude: 39.1329,
           longitude: 84.5150,
           latitudeDelta: 0.015,
           longitudeDelta: 0.0121,
         }}
       >
       </MapView>
     </View>
   );
 }
}

const styles = StyleSheet.create({
  container: {
    position: 'absolute',
    top: 0,
    left: 0,
    right: 0,
    bottom: 0,
    justifyContent: 'flex-end',
    alignItems: 'center',
  },
  map: {
    position: 'absolute',
    top: 0,
    left: 0,
    right: 0,
    bottom: 0,
  },
});

AppRegistry.registerComponent('ReactNativeMaps', () => ReactNativeMaps);

AndroidManifest。xml文件:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.reactnativemaps"
    android:versionCode="1"
    android:versionName="1.0">

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

    <uses-sdk
        android:minSdkVersion="16"
        android:targetSdkVersion="22" />

    <application
      android:name=".MainApplication"
      android:allowBackup="true"
      android:label="@string/app_name"
      android:icon="@mipmap/ic_launcher"
      android:theme="@style/AppTheme">
      <meta-data
     android:name="com.google.android.geo.API_KEY"
     android:value="AIzaSyC3injbScdjmMp7J5MM1GqBhSb-kulIF_8"/>
      <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
      </activity>
      <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
    </application>

</manifest>

共有3个答案

乐钱青
2023-03-14

对于同一目标版本,我也遇到了同样的问题,我通过更改google api密钥来解决这个问题。使用链接重新生成google api密钥

https://developers.google.com/maps/documentation/android-api/signup#release-证书

并将其添加到AndroidManifest中。添加的xml文件

黎曾笑
2023-03-14
  • 转到AVD
姚宪
2023-03-14

我也有类似的问题,在解决之前花了很多时间。通常在真实设备上一切正常,但在我的一些仿真器变体上无法显示谷歌地图。显然,程序代码还可以,所以问题是为什么?

到目前为止,我观察到:

>

如果使用纯Android映像,cpu arm(不是加速的x86,速度较慢)也可以工作。

如果您使用的是x86_64操作系统——在我的例子中是macOS 10.13.2,请使用x86_64版本的emulator image,而不是通用x86!!!这是我最大的错误,没有让它工作!用x86_64变体替换我的模拟器映像,解决所有问题!

 类似资料:
  • 我正在尝试通过OAuth访问谷歌驱动器以进行本地开发。我包括以下范围: 最后一个范围是:https://www.googleapis.com/auth/drive.file 但是,当我获取客户端ID并在本地应用程序中使用它时,我只被要求通过google对其进行签名。我没有被要求获得有关驱动器文件访问的任何权限。我通过读取登录后获得的访问令牌进一步检查它。在json格式的详细信息中,范围显示以下内容

  • 谁能引导我过去吗?也许我的效用不好?

  • 我有一个KMZ,它也包含区域多边形和城市点(12个谷歌引脚),但它们不会出现在地图上,尽管如你所见已打开。如何可见它们?有人能帮我吗? 这是地图:http://goo.gl/maps/Nbrfq 安得烈

  • 我正在从 .NET 网络应用程序授权使用谷歌日历。这是我制作的网址:https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/calendar

  • 我正在尝试发布我的应用程序,但有一个问题与谷歌地图。应用程序包含一个显示地图的活动(MapActivity)。在调试模式下运行时,映射工作良好。我在发布模式下签署了我的应用程序,并得到了SHA1。我根据需要在Google控制台创建了一个新的android键(sha1;packageName)。获取API密钥 在我的应用程序中,我根据需要引用了一个google-play-services-lib的副