我正在尝试获取当前位置并在位置上添加标记。当我在模拟器上启动应用程序时,一切正常。但是当我构建APK并且我在手机上启动应用程序时,我没有在当前位置看到标记。有谁能告诉我出了什么问题?
private void loadmap() {
mapFragement.getMapAsync(new OnMapReadyCallback() {
@SuppressLint("MissingPermission")
@Override
public void onMapReady(GoogleMap googleMap) {
MainActivity.this.googleMap = googleMap;
googleMap.moveCamera(CameraUpdateFactory.zoomBy(10));
googleMap.setMyLocationEnabled(true);
googleMap.addMarker(new MarkerOptions().position(marker = new LatLng(36.749979, 5.040646)).title("fastpark"));
}
});
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == PERMS_CALL_ID) {
checkPermmisions();
}
}
@Override
protected void onPause() {
super.onPause();
if (lm != null) {
lm.removeUpdates(this);
}
}
@Override
public void onLocationChanged(Location location) {
mLastLocation = location;
if (mCurrLocationMarker != null) {
mCurrLocationMarker.remove();
}
//Place current location marker
start = new LatLng(location.getLatitude(), location.getLongitude());
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(start);
markerOptions.title("Current Position");
markerOptions.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_MAGENTA));
mCurrLocationMarker = googleMap.addMarker(markerOptions);
//move map camera
googleMap.moveCamera(CameraUpdateFactory.newLatLng(start));
googleMap.animateCamera(CameraUpdateFactory.zoomTo(11));
//stop location updates
if (mGoogleApiClient != null) {
LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, (com.google.android.gms.location.LocationListener) this);
}
}