讨论不限平台,但为了方便说明以下以 Android 为例。
假设有个服务,例如通话、影片等等,每秒钟要收取 n 元代币,若用户代币不足则立即结束服务。
方案ㄧ:
每秒向 Server 发起 Http 请求进行扣费。
缺点:
请求数可能过多,Server 负载过重。
方案二:
Client 纪录开始时间,当用户代币不足或主动结束服务时,计算开始时间与结束时间差再回报给 Server。
缺点:
若用户主动断网并清除 APP 资料再重新登入,Client 之前纪录的时间会不见导致无法得知用户到底使用多久。
请问有没有方法可以纪录用户使用秒数并确实回报给 Server?