2017-01-10 5 views
0

Я внедрил приложение, которое может импортировать GPX-файл и содержит множество координат lat/long (несколько сотен).неограниченный обратный запрос на геокодирование

Мое приложение выполняет обратное геокодирование для каждого lat/long. Я хочу отображать в таблице view все lat/long с их адресом (который будет заказан по стране и городу).

Я выполняю только один запрос на геокодирование за раз (как описано в документации Apple по обратному GeoodeLocation() в Location Core. Когда я получаю ответ на запрос геокодирования, я запрашиваю следующий, а затем до тех пор, пока я не буду разрешили все мои Lat/Long.

К сожалению, когда я разрешил около 40 лат/длинный, обратноеGeocodeLocation() вызывает ошибку (CLError.network), а затем мне нужно подождать 60 секунд до разрешения следующих и т. д. ...

У меня есть несколько вопросов: - Есть ли способ пойти быстрее? Потому что, если у меня есть 800 лат/долго, это займет около 20 минут (800/40) * 60 = 1200 секунд (это очень долго для приложения, работающего на iPhone) - Даже если я не буду выполнять улучшения в скорости, есть ли риск, что если у меня будет много пользователей, тогда Apple будет запретите мое приложение, потому что количество запросов на геокодирование будет слишком высоким?

Спасибо за ваши отзывы С уважением,

Себастьен

+0

Документы говорят «Отправить не более одного запроса на геокодирование для любого действия пользователя». Поэтому я бы сказал, что отправка 800 запросов для одного действия пользователя определенно сопряжена с риском того, что вы будете отвергнуты за злоупотребление API-интерфейсами геокодирования. – dan

+0

Я согласен, но вы видите другие варианты (бесплатно)? – sebastien

ответ

0

ли файл GPX статическими или будет меняться для каждого пользователя/скачать? Если статический, то, может быть, просто обратный геокод все уголки заранее?

Альтернативно, ищите другую услугу для обратного геокодирования.

+0

Он не будет статическим, каждый пользователь может импортировать свои собственные файлы GPX. Единственное решение, которое я нашел, это выполнить обратное геокодирование только тогда, когда пользователь коснется булавки на карте. Только по одному будет разрешено, и оно будет соответствовать правилу Apple. В таблице, где отображаются все записи, будет отображаться только lat/long для не разрешенных записей, а затем полный адрес для записей, которые были разрешены. Если я хочу разрешить все lat/long, единственным решением является оплатить услугу, и я не могу позволить себе это приложение. Я бы предпочел, чтобы у меня было лучшее решение для моих пользователей, но без выбора – sebastien

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

  • Нет связанных вопросов^_^