Android:谷歌地图没有出现

时间:2012-02-09 04:33:25

标签: android

我正在尝试使用Andriod中的谷歌地图进行快速教程

当我加载项目时,我只得到下面的标题和Hello字符串。我不确定我在这里做错了什么。我在生成api密钥时复制了代码

清单是:

<?xml version="1.0" encoding="utf-8"?>

<uses-sdk android:minSdkVersion="3" />  
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-library android:name="com.google.android.maps" />
<application
    android:name=".MapsActivity"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:name=".TestGoogleMapsActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

main.xml中

<?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">
  <com.google.android.maps.MapView
                 android:layout_width="fill_parent"
                 android:layout_height="fill_parent"
                 android:apiKey="0BEWMEhSfG1KpK8VJaPUKRS0bpcavE8rIvn3hjQ"
                 />
</RelativeLayout>

enter image description here

更新 TestGoogleMapsActivity.java     包Gibby.TestMaps;

import android.app.Activity;
import android.os.Bundle;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import android.os.Bundle;

public class TestGoogleMapsActivity extends MapActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

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

4 个答案:

答案 0 :(得分:3)

将此<uses-library android:name="com.google.android.maps" />移到应用程序代码

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

<application
    android:name=".MapsActivity"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <uses-library android:name="com.google.android.maps" />
    <activity
        android:name=".TestGoogleMapsActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

答案 1 :(得分:1)

你需要将你的签名密钥注册到谷歌地图api,并从那里获得一个api密钥,需要在MapView参数apiKey中使用api,你可以使用以下链接获取地图api密钥:

http://code.google.com/android/add-ons/google-apis/mapkey.htmlhttp://mobiforge.com/developing/story/using-google-maps-android

答案 2 :(得分:1)

答案 3 :(得分:0)

您提供的XML不包含“hello”字符串。因此,您并没有真正将XML用于您的界面。编辑您的活动并更改其setContentView(R.layout.whatever);以指向所需的布局。例如,如果你的MapView XML在res / layout / mapview.xml中,你应该有setContentView(R.layout.mapview);

编辑:...哦,现在你已经提供了一个屏幕截图,暗示你没有使用某些默认布局,但是还没有提供整个布局(好吧,因为缺少命名空间属性也建议。)

继续。

编辑:...哦,现在你已经展示了完整的XML,而你确实没有使用它。请参阅上面的解决方案。

/撤消删除