Является ли geofencing полностью непригодным для использования в Android?

Из-за этой ошибки моя команда решает вообще не использовать геообработку. Является ли geofencing в Android чем-то полезным или нет?

Из отчета об ошибке:

На всех собственных тестовых устройствах все отлично работает с отладочными и релизными сборками. Однако для некоторых пользователей мы получаем отчеты о сбоях, которые указывают на проблему с API:

Fatal Exception: java.lang.SecurityException: Invalid API Key for package = de.stocard.stocard .Status code received = -1 at android.os.Parcel.readException(Parcel.java:1620) at android.os.Parcel.readException(Parcel.java:1573) at com.google.android.gms.common.internal.zzu$zza$zza.zza(Unknown Source) at com.google.android.gms.common.internal.zzd.zzqz(Unknown Source) at com.google.android.gms.internal.zzpw$zzc.zzapl(Unknown Source) at com.google.android.gms.internal.zzpw$zzf.run(Unknown Source) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) at com.google.android.gms.internal.zzrn.run(Unknown Source) at java.lang.Thread.run(Thread.java:818) 

Это происходит в версиях Android от 4.4.2 до 7.0 без заметного шаблона. То же самое относится к модели устройства и производителю: многие и несколько производителей и моделей.

Это звучит как довольно тяжелый Гейзенбуг.

Обновить:

Кажется, есть два разных способа сделать geofencing в Android:

  1. Использование API осведомленности [.fence]
  2. Использование геолокации Geofence API

Нам нужно будет использовать API-интерфейс Awareness, чтобы получить возможности и удобство батареи, которые мы желаем.

ЗАМЕТКА:

Я вижу 1 закрытое голосование из-за «главным образом основанного на мнениях». Итак, позвольте мне быть ясными, я не хочу ответов на неподтвержденные мнения. Я хочу факты, ссылки или конкретные знания. Я проводил исследования и ссылался на случайную ошибку при сбое без надежной работы. Я хочу, чтобы другие отметили, что они успешно выполнили геообработку и имеют:

  1. Доказательства того, что их приложения никогда не сталкивались с этой ошибкой (хорошая отчетность о сбоях, которая никогда не заражала Invalid API Key for package )
  2. Увидели эту ошибку и успешно внедрили исправление
  3. Никогда не видел эту ошибку

Solutions Collecting From Web of "Является ли geofencing полностью непригодным для использования в Android?"

Связанная с вами ошибка содержала всю информацию, не так ли?

В наших проверках есть ошибка, которая иногда бросает это SecurityException, когда есть сетевая ошибка для аутентификации. Исправление будет включено в следующую версию сервисов Google Play.

На данный момент лучшим решением будет создание UncaughtExceptionHandler в потоке, который вы называете GoogleApiClient.connect (). Для большинства людей это будет в основном потоке, который вы можете получить через Looper.myLooper (). GetThread ().

Обновить

Ну, чтобы ответить на ваш вопрос: «Является ли geofencing полностью непригодным для использования в Android?», Я бы сказал «нет», он не «полностью» непригоден, но, очевидно, содержит несколько вопросов.

Должны ли вы вообще не использовать георейтинг из-за этих ошибок? Я предполагаю, что это сильно зависит от варианта использования и действительно является вопросом, основанным на мнениях. Как всегда с мобильными устройствами, вы никогда не сможете быть на 100% уверены, что что-то будет работать. У вашего мобильного устройства может отсутствовать сигнал, и даже если в коде не было ошибок, он может по-прежнему не получать уведомления об определенном местоположении по различным причинам. На мобильном телефоне это все о том, как вы справляетесь с ошибками.

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

Упомяните своим пользователям, что нет 100% гарантии того, что функция geofence вашего приложения работает всегда из-за базовой системы, и я думаю, что они все равно будут рады этой функции. Вероятно, есть некоторые FAQ где-то в вашем приложении или на вашей домашней странице, где рассматриваются известные проблемы. Надеюсь, это поможет вам сделать деление