TimeFence.inInterval en la API de conocimiento no funciona

Estoy utilizando esto para configurar una valla de tiempo:

ArrayList<AwarenessFence> awarenessFences = new ArrayList<AwarenessFence(); awarenessFences.add(TimeFence.inInterval(timeInMillis, timeInMillis+5L)); AwarenessFence customFence = AwarenessFence.and(awarenessFences); 

Sin embargo, la cerca no se activa cuando el tiempo se cae entre timeMillis y timeMillis + 5L. Mis receptores están funcionando correctamente ya que todas las otras vallas están funcionando como se esperaba. ¿Cuál puede ser el problema detrás de la TimeFence no funciona?

    La pregunta no tiene suficiente información para identificar el problema potencial. De la prueba, la cerca de tiempo específica mencionada funciona como se esperaba. Puedo hacer el mejor esfuerzo en señalar algunos problemas comunes.

    • Mirando la documentación de TimeFence.inInterval , el tiempo de inicio y fin de millis son el número de milisegundos desde la época. Por favor, compruebe que los parámetros que se pasan son en realidad en millis desde la época (a diferencia de en una zona horaria específica o desde el comienzo del día)

    • El intervalo de la timeFence es de 5 milisegundos, que es muy corto. Como cuestión práctica, yo establecería el intervalo a algo que es perceptible, tal vez unos segundos o mejor aún, un minuto.

    • En el punto anterior, si timeMillis se obtiene de System.currentTimeMillis (), la hora actual más 5 ms podría haber pasado ya en el momento en que la valla se registra con la API. Una vez más, esto apunta a usar un intervalo más largo en la práctica.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.