In BMDPedometerModule.java since you are using startAt as long, which is logic because you are using currentTimeMillis method, also should return a long. The issue is that map.putInt("startDate", (int)this.startAt); simplifies the startAt value, giving a wrong value when the object is returned in javascript.