получение текущего местоположения при открытии приложения

#ios #google-maps #core-location #google-maps-sdk-ios #currentlocation

#iOS #google-карты #ядро-местоположение #google-maps-sdk-ios #текущее местоположение

Вопрос:

Привет, в моем приложении я должен показать карту маршрута от моего текущего местоположения до места назначения. Для этого я использую google map URL-адрес для отображения карты маршрута, все работает нормально. Но проблема заключается в том, что при первой установке приложения оно получает наличные и не получает текущее местоположение.

Когда я сворачиваю приложение, оно отображает предупреждающее сообщение, например.

 "appname" would like to use Your current Location
  

После нажатия кнопки «Ок» я закрываю приложение и снова открываю его, теперь в нем отображается карта маршрута.

Мой код.

 -(void)currentlocation{
     locationManager = [[CLLocationManager alloc]init];

     locationManager.delegate = self;


     locationManager.distanceFilter = kCLDistanceFilterNone;


     locationManager.desiredAccuracy = kCLLocationAccuracyBest;


     [locationManager startUpdatingLocation];


     [self->locationManager startUpdatingLocation];


      CLLocation *location = [locationManager location];


      CLLocationCoordinate2D coordinate = [location coordinate];

      mapView = [[[MapView alloc] initWithFrame:
            CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)] autorelease];

    [self.view addSubview:mapView];

   Place* home = [[[Place alloc] init] autorelease];
    home.name = @"Home";
    home.description = @"Sweet home";
    home.latitude = 13.0051850;
    home.longitude = 77.62698590;

       Place* office = [[[Place alloc] init] autorelease];
    office.name = @"Office";
    office.description = @"Bad office";
    office.latitude = coordinate.latitude;
    office.longitude = coordinate.longitude;

        [mapView showRouteFrom:home to:office];

    }
  

Я использовал приведенный выше код, который я хочу, например, когда пользователь открывает приложение, оно должно показывать предупреждение, и как только пользователь нажимает кнопку «ОК», отображается карта маршрута. пожалуйста, скажите мне, как этого добиться, я застрял здесь надолго, пожалуйста, помогите мне.

Спасибо.

Ответ №1:

попробуйте этот pa..

 - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
    NSLog(@"didUpdateToLocation: %@", newLocation);
    CLLocation *currentLocation = newLocation;

    if (currentLocation != nil) {

        Place* home = [[[Place alloc] init] autorelease];
        home.name = @"Home";
        home.description = @"Sweet home";
        home.latitude = 13.0051850;
        home.longitude = 77.62698590;

        Place* office = [[[Place alloc] init] autorelease];
        office.name = @"Office";
        office.description = @"Bad office";
        office.latitude = currentLocation.coordinate.latitude;
        office.longitude = currentLocation.coordinate.longitude;
        [mapView showRouteFrom:home to:office];


    }
    // Stop Location Manager
    [locationManager stopUpdatingLocation];
}