【问题标题】:Why Google Map is not displaying on Android Emulator?为什么谷歌地图不显示在 Android 模拟器上?
【发布时间】:2015-03-29 12:10:09
【问题描述】:

为了在 android Genymotion Emulator 上运行谷歌地图,我已经安装并准备好了所有东西。但由于某些原因,它没有显示出来。我知道该程序能够导航到该地图布局页面,但实际地图并未出现在那里。

看起来像这样:

我尝试过不同的模拟器,但它们都是一样的。

这是怎么回事?

这是模拟器规范:

fragment_map_detailed.XML:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/map"
    tools:context=".MapDemoActivity"
    android:name="com.google.android.gms.maps.SupportMapFragment"/>

清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.mycompany.lab3_fragment_list" >

    <permission
        android:name="com.mycompany.lab3_fragment_list.permission.MAPS_RECEIVE"
        android:protectionLevel="signature" />
    <uses-permission android:name="android.permission.INTERNET" />"

    <uses-permission android:name="com.mycompany.lab3_fragment_list.permission.MAPS_RECEIVE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-feature
        android:glEsVersion="0x00020000"
        android:required="true" />
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".ItemListActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".ItemDetailActivity"
            android:label="@string/title_item_detail"
            android:parentActivityName=".ItemListActivity" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".ItemListActivity" />
        </activity>



        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />

        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="AIzaSyBDAQyMry1pdb9aCEvzBR0eTO79vj0MtU4" />
    </application>

</manifest>

ItemDetailFragment:

.....................
...................
     else if (mItem.id.equals("4")) {

                    rootView = inflater.inflate(R.layout.fragment_map_detailed, container, false);


                }
.....................
....................

[注意:此问题涉及我的应用程序的一部分。我的应用程序很大,我使用了列表项视图和 dummyContent。对于活动,我使用了主溢出。]

【问题讨论】:

  • 出于安全考虑,您可能不想在此处显示您的真实地图密钥。
  • 你在真机上试过了吗?
  • 如果我没记错的话,自从他们不太支持 OpenGL ES 2 以来就一直如此。
  • 蜂蜜鸨,好点子!但我做了改变。
  • 蜂蜜鸨,我没试过。我应该吗?

标签: android android-layout android-mapview android-maps-v2 android-maps


【解决方案1】:

我认为你的 google playbservices 没有安装在模拟器中。

【讨论】:

  • 请注意,在 Genymotion 上安装 Google Play 服务违反许可条款和条件。
  • Kavis,它已安装。我下载了相应的 Zip 文件并将其拖放。
【解决方案2】:

herehere 下载google play 服务。然后将文件拖放到您的模拟器中,您就可以开始使用了。

【讨论】:

  • 请注意,在 Genymotion 上安装 Google Play 服务违反许可条款和条件。
  • Simon,是不是说我永远不能在 Genymotion 模拟器中使用它
猜你喜欢
  • 1970-01-01
  • 2014-10-15
  • 2017-05-22
  • 1970-01-01
  • 1970-01-01
  • 2011-07-29
  • 1970-01-01
  • 2012-06-02
  • 2015-05-12
相关资源
最近更新 更多