500 - минимальный интервал для уведомлений и является только подсказкой.
Как видно из javadocs :
минимальный интервал времени для уведомлений, вмиллисекунды.Это поле используется только как подсказка для экономии энергии, и фактическое время между обновлениями местоположения может быть больше или меньше этого значения.
Таким образом, вы можете (и будете) видеть изменения в этом интервале (LocationListener не всегда будетвызываться с точным интервалом в 500 мс)
50 - это minDistance и в соответствии с документацией: минимальный интервал расстояния для уведомлений в метрах.Так что это не влияет на точность, оно только определяет триггер для обновлений местоположения.(если вы перемещаете minDistance, то срабатывает триггер).Таким образом, это не влияет на точность.
Тем не менее, ваш Locationlistener вернет android.location.Location, и это показывает точность (точность исправления в метрах)