2015-05-21 6 views
0

Мне нужно получить координаты GPS-фотографий, отправленных пользователем, которые исходят из пользовательской камеры/фото библиотеки. Я использую PHAsset вместо ALAsset ради современности.(местоположение PHAsset) возвращает (null) для фотокамер камеры, даже если включены службы определения местоположения.

Я знаю, что службы определения местоположения включены, потому что я могу распечатать текущее местоположение пользователя и добавить в файл info.plist «NSLocationAlwaysUsageDescription», «NSLocationWhenInUseDescription» и «описание использования местоположения - местоположение». Я импортировал CoreLocation, MobileCoreServices и фотографии в файле .h для моего ViewController.

Мой текущий код в методе делегата didFinishPickingMediaWithInfo выглядит следующим образом:

NSURL *url = [info objectForKey:UIImagePickerControllerReferenceURL]; 
PHFetchResult *res = [PHAsset fetchAssetsWithALAssetURLs:[NSArray arrayWithObject:url] options:nil]; 
PHAsset *thisPhoto = [res objectAtIndex: 0]; 
CLLocation *photoLocation = [thisPhoto location]; 
NSLog(@"%@", photoLocation); 

По какой-то причине, это всегда выводит (нуль). Есть ли что-то, что мне не хватает, что мешает мне получить доступ к данным местоположения PHASset? Я знаю, что PHASset назначается должным образом, потому что [PHAsset creationDate] отлично работает для любой фотографии, которую я выбираю.

Спасибо!

ответ

1

У вас есть доступ к данным местоположения PHAsset (при условии, что они доступны). Пользователь мог бы не разрешить приложению камеры получать доступ к службам местоположения, что приводит к фотографиям без данных местоположения.

+0

Похоже, вы правы. Почему на некоторых фотографиях есть данные о местоположении, а другие нет? По крайней мере, в моей собственной библиотеке фотографий, кажется, что фотографии почти чередуются между данными о местоположении и отсутствием их, хотя я никогда не запрещал услуги определения местоположения на своем телефоне. Любая идея почему? – kmb

+0

Другие случаи, о которых я знаю, - это скриншоты, снятые на телефоне (без данных о местоположении), некоторые фотографии синхронизируются с iTunes (могут иметь или не иметь данные о местоположении). В вашем случае вам необходимо исключить проблемы с приемом для GPS. Попробуйте либо на улице, либо убедитесь, что WIFI включен. –

Смежные вопросы