Android Studio - 缺少地图标记

Android Studio - Missing map markers

我目前正在使用 android studio 开发我的地图应用程序。除了我添加的标记外,一切都运行良好。我一直在使用官方文档 Google Maps Android API v2 作为我的指南,但是当我尝试加载地图时无法在任何地方找到我的标记。我错过了什么吗?

这是我的地图活动:

import android.os.Bundle;
import com.google.android.gms.maps.*;
import com.google.android.gms.maps.model.*;
import com.google.android.gms.maps.GoogleMap;
import android.support.v4.app.FragmentActivity;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.CameraUpdateFactory;

public class MapFragment extends FragmentActivity implements OnMapReadyCallback
{
    private SupportMapFragment sMapFragment;

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.map_layout);

        sMapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
        sMapFragment.getMapAsync(this);
    }

    @Override
    public void onMapReady(GoogleMap mMap)
    {
        LatLng one = new LatLng(10.178, 122.560);
        LatLng ILOILO = new LatLng(10.730278, 122.548889);

        mMap.setBuildingsEnabled(true);
        mMap.setMyLocationEnabled(true);
        mMap.setMapType(GoogleMap.MAP_TYPE_TERRAIN);
        mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(ILOILO, 12));

        mMap.addMarker(new MarkerOptions()
            .title("Empty Lot 1")
            .snippet("blah blah blah")
            .position(one)
            .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE)));
    }
}

这是我的 map_layout:

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

编辑

我也试过删除 private SupportMapFragment sMapFragment; 并更改我的

        sMapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
        sMapFragment.getMapAsync(this);

进入

        SupportMapFragment sMapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map));
        sMapFragment.getMapAsync(this);

但我仍然找不到我的标记。

由于您的 Java 代码看起来不错.. 尝试根据 Google onMapReadyCallback 侦听器

文档编辑您的 XML 文件
xmlns:map="http://schemas.android.com/apk/res-auto"
android:name="com.google.android.gms.maps.SupportMapFragment"

希望这会有所帮助!!

确保您设备的位置服务已启用也是一个好主意。 我浪费了几个小时寻找解决方案,最终发现我的定位服务没有启用!