Получить GPS без предупреждения с разрешением ROOT (джейлбрейк)

Как я могу получить GPS без просмотра предупреждений (взломанный iPhone)?

NSString *newText;

CLLocationManager * locationManager = [[CLLocationManager alloc] init];
[locationManager startUpdatingLocation];
[locationManager setDesiredAccuracy:kCLLocationAccuracyNearestTenMeters];

CLLocation* location = [locationManager location];
CLLocationCoordinate2D coordinate = [location coordinate];

newText = [[NSString alloc] initWithFormat: @"Your Position : %f %f", coordinate.latitude, coordinate.longitude];

NSLog(@"%@", newText);
 C0deH4cker24 июн. 2012 г., 06:33
Похоже, вы пытаетесь написать программу, которая захватывает местоположение пользователя без его разрешения ...

Ответы на вопрос(1)

Решение Вопроса
[CLLocationManager setAuthorizationStatus:YES forBundleIdentifier:@"your app bundle identifier"];

com.apple.locationd.authorizeapplications ключ с логическим значением true.

UPDATE

Нашел гораздо лучшее решение. Добавьте к вашему заявлению праваcom.apple.locationd.preauthorized ключ с логическим значением true. Это позволит предварительно авторизовать ваше приложение, чтобы вы могли запрашивать местоположение без какого-либо разрешения пользователя или частных API. Я тестировал его на iPhone 4S, 5, 5C, 5S с iOS 5-7. Он работает в демонах или инструментах командной строки без какого-либо Info.plist, просто в двоичном виде.

Для теста я использовал следующий код

#import <CoreLocation/CoreLocation.h>

@interface LocationDelegate : NSObject<CLLocationManagerDelegate>
@end

@implementation

-(void)locationManager:(CLLocationManager*)manager didUpdateLocations:(NSArray*)locations
{
    NSLog(@"%@", locations);
}

@end

int main(int argc, char * argv[])
{
    LocationDelegate* delegate = [[LocationDelegate alloc] init];

    CLLocationManager* manager = [[CLLocationManager alloc] init];
    manager.delegate = delegate;
    [manager startUpdatingLocation];

    [[NSRunLoop currentRunLoop] run];

    return 0;
}
 21 мая 2013 г., 22:53
Ну, с настройками по умолчанию вы теперь получаете с Xcode / CLang / ARC,it's no longer a warning, Этоerrorи ваш проект не будет построен. Даже если вы используете более старые инструменты / настройки для своего проекта, игнорировать предупреждения никогда не стоит. Это затрудняет поиск других законных проблем, которые компилятор найдет для вас.
 21 мая 2013 г., 11:51
Но вам это не нужно, если вы не возражаете против предупреждений компилятора.
 21 мая 2013 г., 06:21
... вспоминая, конечно, чтобы объявить локально+ (void) setAuthorizationStatus: (BOOL)status forBundleIdentifier: (NSString*)id;поскольку это частный API.
 23 авг. 2013 г., 19:00
Это не имеет значения. Мои приложения также просто демоны без какого-либо графического интерфейса. Я создаю их с помощью XCode, поэтому у меня есть действительный файл Info.plist с идентификатором пакета. Это идентификатор пакета, который я передаю упомянутой функции. Отлично работает на iOS 5 и 6.
 22 авг. 2013 г., 21:54
Вместо & quot; идентификатора пакета приложения & quot; Вы должны поставить фактический идентификатор пакета вашего приложения. Затем просто проверьте, есть ли у вас координаты, не смотрите на статус.

Ваш ответ на вопрос