Google Maps Marqueur de ne pas obtenir de l'affiche

Je suis en train d'apprendre l'API google map. Je vois une carte mais je n'arrive pas à obtenir un marqueur à l'emplacement correct. Je le vois quelque part dans l'océan, près de la Chine. En outre, la carte est centrée en (0,0) et de ne pas l' (lat,long) que j'ai fourni. Voici mon code

Activité

public class HomeActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.home_page);
        GoogleMap map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
        map.addMarker(new MarkerOptions()
                .position(new LatLng(37.7750, 122.4183))
                .title("San Francisco"));
    }

}

home_page.xml

<?xml version="1.0" encoding="utf-8"?>
<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"/>

AndroidManifest.xml

  <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="16" />

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-feature
            android:glEsVersion="0x00020000"
            android:required="true"/>
    <uses-feature android:name="android.hardware.camera"
                  android:required="true" />
    <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"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>


    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">
        <meta-data
                android:name="com.google.android.gms.version"
                android:value="@integer/google_play_services_version" />
        <activity android:name=".HomeActivity" >
            <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="My SHA1 key"/>
    </application>

Que suis-je manquer?

  • avez-vous essayé l'extension de FragmentActivity au lieu de l'Activité?
  • Montrez-nous le fichier de manifeste.
  • Je vois le marqueur quelque part dans l'océan, près de la Chine. En outre, la carte est centrée en (0,0) et de ne pas l' (lat,long) que j'ai fourni, qui devrait être à San Francisco.
InformationsquelleAutor Prasanna | 2014-04-05