2013-06-20 45 views
0

這是我爲我的項目的代碼,但是當我運行它,它立即關閉谷歌Android地圖API V2沒有工作

這是我MainActivity類 包com.example.freearmymaps;

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import com.google.android.gms.common.GooglePlayServicesUtil; 
import com.google.android.gms.maps.GoogleMap; 
import com.google.android.gms.maps.MapFragment; 
import com.google.android.gms.maps.model.BitmapDescriptorFactory; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.Marker; 
import com.google.android.gms.maps.model.MarkerOptions; 
public class MainActivity extends Activity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.activity_main, menu); 
     return true; 
    } 

} 

這activity_main

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

這是AndroidManifest

<uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="16" /> 
    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true"/> 
<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> 
<!-- The following two permissions are not required to use 
    Google Maps Android API v2, but are recommended. --> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
<uses-permission android:name="com.example.freearmymaps.MAPS_RECEIVE"/>  
    <permission 
     android:name="com.example.freearmymaps.MAPS_RECEIVE" 
     android:protectionLevel="signature"/> 
    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <!-- <activity android:name="com.example.freearmymaps.library.googleplayserviceslib" /> --> 
     <activity 
      android:name="com.example.freearmymaps.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <meta-data 
    android:name="com.google.android.maps.v2.API_KEY" 
    android:value="AIzaSyDWPLxsxJb-hzckZf50czZ8pnuub3a-Hjo"/> 
    </application> 


</manifest> 

請誰能告訴我在哪裏的問題,我該怎麼解決呢?

+0

發表您的堆棧跟蹤 – Raghunandan

回答

0

你分鐘SDK是8

如果你的目標API 12及以上使用MapFragment。否則,請使用SupportMapFragment

<fragment 
class="com.google.android.gms.maps.SupportMapFragment" 
android:id="@+id/map" 
android:layout_width="match_parent" 
android:layout_height="match_parent"/> 

您的活動必須擴展FragmentActivity

SupportMapFragment fm = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); 
GoogleMap mMap = fm.getMap(); 

確保您已經添加支持庫

還要確保您導入下面的

import android.support.v4.app.FragmentActivity; 
import com.google.android.gms.maps.SupportMapFragment;