【问题标题】:MapView Issues / Empty TilesMapView 问题/空图块
【发布时间】:2012-03-16 07:14:42
【问题描述】:

我在使用 MapView 时遇到问题。我以前使用过 MapView,所以我真的不知道问题出在哪里,这可能是我忽略的一些简单问题,但它让我发疯了。该应用程序安装和运行很有趣,但 MapView 瓦片没有加载。我所看到的只是一个空网格。我知道 API 密钥(调试密钥库)很有趣,因为我有另一个使用它的项目可以完美运行。我已包含我的清单、布局和活动文件以帮助诊断问题。我会很感激任何帮助 - 我很困惑!

清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.***.studybuddy"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.INTERNET"/>

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.NoTitleBar" >
    <uses-library android:name="com.google.android.maps" />
    <activity
        android:name=".StudyBuddy"
        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=".MapInterface" >
    </activity>
    <service
        android:name=".FriendService" >
        <intent-filter>
            <action
                android:name="com.***.studybuddy.FriendService" />
        </intent-filter>
    </service>
</application>

布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <LinearLayout
        android:id="@+id/sideMenuInterface"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#FFFFFF" >
    </LinearLayout>
    <LinearLayout
        android:id="@+id/mapInterface"
        android:layout_alignLeft="@id/sideMenuInterface"
        android:layout_alignTop="@id/sideMenuInterface"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
        <RelativeLayout
            android:id="@+id/topMenu"
            android:layout_width="fill_parent"
            android:layout_height="30dp"
            android:clickable="true"
            android:onClick="onClick" >
        </RelativeLayout>
        <com.google.android.maps.MapView
            android:id="@+id/mapView"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:clickable="true"
            android:apiKey="0f6nuBOcz_OlhAQm3B3Xljy5hDOVrR1FO3KM***"
        />
    </LinearLayout>
</RelativeLayout>

活动:

package com.***.studybuddy;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;

import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;

public class MapInterface extends MapActivity implements OnClickListener {
    static int USER_ID = 1;
    static MapView mapView;


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mapinterface);

        configure();
    }

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

    private void configure() {
        findViews();
        startService(new Intent(FriendService.class.getName()));
        mapView.setBuiltInZoomControls(true);
        mapView.setSatellite(true);
    }

    private void findViews() {
        mapView = (MapView) findViewById(R.id.mapView);
    }

    @Override
    public void onClick(View view) {
        switch(view.getId()) {
        case R.id.topMenu:
            ((View)view.getParent()).setVisibility(View.GONE);
            break;
        }

    }
}

截图:

【问题讨论】:

    标签: android map android-mapview api-key


    【解决方案1】:

    我曾经遇到过错过一些权限的问题。我需要这 3 个权限(您缺少前两个。):

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

    【讨论】:

    • 添加了权限,没有变化...地图仍然是空的。
    • 那么我唯一能想象的就是签署您的应用程序出了问题。你按照这里的描述做了:code.google.com/android/add-ons/google-apis/mapkey.html?
    • 是的..我会尝试生成一个新的调试密钥库..如果可行,我会告诉你
    • 成功了,我刚刚使用新的调试密钥库注册了一个新的 apiKey
    猜你喜欢
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-27
    • 2013-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多