android - 灰色瓷砖 Android 谷歌地图模拟器

标签 android maps emulation tiles

第一个问题。

当我在 android 模拟器中构建应用程序而不是显示 Google map 的 map 时,它显示空的灰色图 block 。

我做过的事情:

  • 我添加了 Google API SDK。
  • 项目目标是 Android + Google APIs (Google Apis)。
  • 我使用目标 Google Apis 创建了一个新的模拟器,带有 GPS,并将 RAM 和最大 vm 应用程序堆增加到 512 和 48。
  • 我删除了 debug.keystore 和 default.keyset 2000 次并重建 key 并发送给 Google 2000 次以上,但仍然无法正常工作。
  • 我获取 SHA1 的命令如下:

    ./keytool.exe -list -v -keystore/home/q/my_name/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

然后我获取 sha1 并粘贴到 google 中并添加一个分号和应用程序名称,所以:

E4:A ..... C38;com.example.myappname

好的,那我的代码:

主要 Activity :

package com.example.rest;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;

public class Rest extends MapActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_rest);
        MapView mapView = (MapView) findViewById(R.id.mapview);
        mapView.setBuiltInZoomControls(true);
    }

    @Override
    protected boolean isRouteDisplayed() {
        return false;
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_rest, menu);
        return true;
    }

    public void onProviderDisabled(String provider) {
        Intent intent = new Intent( android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
        startActivity(intent);
    }
}

list :

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

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" />

    <uses-permission android:name="android.permission.INTERNET"/>    
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <uses-library android:name="com.google.android.maps"/>

        <activity
            android:name=".Rest"
            android:label="@string/title_activity_rest" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

布局:

<RelativeLayout 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" >

<com.google.android.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mapview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clickable="true"
    android:apiKey="AIzaSyAdh38-k34RPi7aQ4ik6ExKKWI-wS-bDJA"
/>

</RelativeLayout>

重要的事情:

  • 预建的 map 应用程序可以正常工作。
  • sdk 示例 (com.example.android.apis.MapsDemo) 不工作,因为也显示灰色瓷砖。

有什么线索吗?关于我的问题,无论你需要什么,我都会回答。

(我已经编辑了应用程序名称和一些不显示有关我的名字等真实数据的东西。)

日志:

01-15 10:47:11.498: W/KeyCharacterMap(509): No keyboard for id 0
01-15 10:47:11.498: W/KeyCharacterMap(509): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
01-15 10:47:17.938: W/System.err(509): java.lang.IllegalStateException: Connection pool shut down.
01-15 10:47:18.068: W/System.err(509):  at org.apache.http.impl.conn.tsccm.ConnPoolByRoute.getEntryBlocking(ConnPoolByRoute.java:284)
01-15 10:47:18.068: W/System.err(509):  at org.apache.http.impl.conn.tsccm.ConnPoolByRoute$1.getPoolEntry(ConnPoolByRoute.java:238)
01-15 10:47:18.068: W/System.err(509):  at org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager$1.getConnection(ThreadSafeClientConnManager.java:175)
01-15 10:47:18.068: W/System.err(509):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:325)
01-15 10:47:18.078: W/System.err(509):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
01-15 10:47:18.078: W/System.err(509):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
01-15 10:47:18.298: W/System.err(509):  at android_maps_conflict_avoidance.com.google.common.io.android.AndroidHttpClient.execute(AndroidHttpClient.java:246)
01-15 10:47:18.298: W/System.err(509):  at android_maps_conflict_avoidance.com.google.common.io.android.GoogleHttpClient.executeWithoutRewriting(GoogleHttpClient.java:129)
01-15 10:47:18.308: W/System.err(509):  at android_maps_conflict_avoidance.com.google.common.io.android.GoogleHttpClient.execute(GoogleHttpClient.java:189)
01-15 10:47:18.308: W/System.err(509):  at android_maps_conflict_avoidance.com.google.common.io.android.GoogleHttpClient.execute(GoogleHttpClient.java:242)
01-15 10:47:18.334: W/System.err(509):  at android_maps_conflict_avoidance.com.google.common.io.android.AndroidHttpConnectionFactory$AndroidGoogleHttpConnection.getResponse(AndroidHttpConnectionFactory.java:132)
01-15 10:47:18.334: W/System.err(509):  at android_maps_conflict_avoidance.com.google.common.io.android.AndroidHttpConnectionFactory$AndroidGoogleHttpConnection.openDataInputStream(AndroidHttpConnectionFactory.java:153)
01-15 10:47:18.348: W/System.err(509):  at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.serviceRequests(DataRequestDispatcher.java:922)
01-15 10:47:18.472: W/System.err(509):  at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher$DispatcherServer.run(DataRequestDispatcher.java:1702)
01-15 10:47:18.472: W/System.err(509):  at java.lang.Thread.run(Thread.java:1019)
01-15 10:47:19.038: W/MapActivity(509): Recycling dispatcher android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher@405e68e8
01-15 10:47:19.058: V/MapActivity(509): Recycling map object.
01-15 10:47:19.418: I/MapActivity(509): Handling network change notification:CONNECTED
01-15 10:47:19.418: E/MapActivity(509): Couldn't get connection factory client

我在 Linux 上,但我使用的是位于 winxp 分区上的 keytool.exe。我不知道这是否会导致问题。但是 keytool.exe 给了我 sha1 没有问题,我只是提一下以防它很重要。

编辑:问题已解决!正确答案是 FIDO,只需向下滚动屏幕即可。

最佳答案

您正在将 google map V2 的 key 用于 google map V1 项目。尝试 this获取谷歌地图 V1 的 key

关于android - 灰色瓷砖 Android 谷歌地图模拟器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14335897/

相关文章:

c++ - 具有多个比较功能的单个 std::map/multimap?

c++ - 如何检测 std::map 循环中的最后一次迭代?

python - Cython 使用什么图形库来绘制图形?

android - 完成 Neura 身份验证后未收到 onActivityResult

java - 如何使用java获取utf-8字符集中的页面源

android - 9-patch 编辑器android studio突然黑

Windows下的Blackberry Emulator测试网站

java - 使用套接字通过 Python 将图像文件从 Android 手机发送到 PC

react-native - 如何使用 react-native-maps 更改 mapView.callout 的默认背景颜色?

testing - 用于测试的触摸屏笔记本电脑模拟器