在Firebase中实施CountUp计时器

时间:2019-07-10 06:52:55

标签: android firebase timer

我正在开发一个使用firebase数据库(实时)和google maps的用于出租自行车的android应用程序。

现在,我想添加一个CountUp计时器(HH:mm:ss格式),该计时器可跟踪服务器中的乘车时间。

为什么要这样做?

因为一旦骑行成功预订,骑行时间将由客户开始,但是当自行车归还时,骑行时间只能由其应用程序中管理骑行台的人员来结束。 (以确保周期已安全返回)

如何在Firebase中实现此计时器?

直到现在,我仅在使用广播接收器在后台跟踪时间的客户端实现一个CountUp Timer。

解决此问题的一种方法可能是,客户结束行程(仅当客户位于自行车架20米附近时),并将同一时间存储到Firebase中,并由自行车架管理人员对其进行访问

但是这种方法有一些缺点:

如果一个人从户外看台结束旅程并在一小时后返回,怎么办?计算的时间将是错误的,并且还会妨碍下一个用户的可用性状态。

{{1}}

1 个答案:

答案 0 :(得分:2)

每辆自行车必须具有id,因此在该id下:

userStartTime存储在Firebase中

userEndTime存储在Firebase中,然后让管理器存储cycleStandEndTime

然后,您将所有数据保存在firebase的3个字段中,并且可以进行所需的任何计算。

totalUserUseTime = userEndTime - userStartTime

totalBikeRentalTime = cycleStandEndTime - userStartTime