我正在尝试在Android Studio中设置Google地图活动,该活动会提取用户位置并使用标记显示它。
我尝试了不同的方法来提取用户位置并将其保存为变量,但应用程序在模拟器上使用时总是会崩溃。
公共类MapsActivity扩展FragmentActivity实现OnMapReadyCallback {
private GoogleMap mMap;
private Location location;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
// Obtain the SupportMapFragment and get notified when the map is ready to be used.
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
double latitude = location.getLatitude();
double longitude = location.getLongitude();
LatLng latLng = new LatLng(latitude, longitude);
mMap.addMarker(new MarkerOptions().position(latLng).title("You"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
mMap.animateCamera(CameraUpdateFactory.zoomTo(15));
}
}
如果应用程序适用于真实手机,而不适用于模拟器:
如果你还没有在模拟器上加载google api,这意味着它上面没有安装地图。所以在sdk管理器中,查看详细信息,安装播放服务和google apis以获得所需的级别。注意:旧图像不可用。然后将其用于您的设备。