Yes, as far as I can tell it's just the android alarm manager that sometimes fires too early or too late. It's timing is not as consistent as in the javascript-only implementation.