Comments 11
А почему не стали использовать http://reactivex.io/RxJava/javadoc/rx/Observable.html#buffer(long,%20java.util.concurrent.TimeUnit) для получения трех взмахов?
0
Догадался, скорее всего из-за того, что в этом случае постоянно генерировались бы списки, а это лишние затраты.
Протестировал своё предположение на C#
Протестировал своё предположение на C#
Observable.Never<Object>().Buffer(TimeSpan.FromSeconds(1)).Subscribe(list => Console.WriteLine(list.Count));
+1
Простой пример, когда этот оператор не даст нам ожидаемого результата: граница буффера попала как раз на серию событий, в результате в каждом буффере будет меньше трех событий. Попробую это визуализировать: [...**][*....]. В первом буффере будет 2 события, во втором — одно событие.
К тому же, этот оператор генерирует события, даже если на входе вообще не было событий (генерируются пустые массивы), что не сильно вредно, но не нужно в нашем случае.
А вообще, предлагаемое решение — не единственное, ради тренировки можно попробовать решить еще короче!
К тому же, этот оператор генерирует события, даже если на входе вообще не было событий (генерируются пустые массивы), что не сильно вредно, но не нужно в нашем случае.
А вообще, предлагаемое решение — не единственное, ради тренировки можно попробовать решить еще короче!
0
Решение на RxJava элегантное, спасибо.
Справедливости ради решение от Seismic всего на примерно 150 линий длиннее, но не подключает три библиотеки для решения задачи.
Справедливости ради решение от Seismic всего на примерно 150 линий длиннее, но не подключает три библиотеки для решения задачи.
+1
применяют low pass фильтрацию для того, чтобы убрать гравитационную составляющую.Там high pass.
0
Напомнило
static boolean isUserAMonkey();
0
Всегда интересовало — а как использование этого сенсора отражается на расходе батареи? Т.е. что в данном случае означает «подписка на событие»? Включение сенсора (если выключен) и подписка или просто подписка (он и так включен всегда)?
0
Interesting.
0
Sign up to leave a comment.
Shake Detector для Android на RxJava