gpt4 book ai didi

windows-phone-7 - 对于时间敏感的应用程序(Windows Phone 7),我应该依赖本地电话的时间吗?

转载 作者:行者123 更新时间:2023-12-02 07:50:58 36 4
gpt4 key购买 nike

我正在构建一个应用程序,我的用户将在其中发布内容。发布的确切时间是一个重要的数据点——我需要知道用户点击“发布”按钮的确切时间。一旦帖子被捕获,我就会将该帖子上传到我的网络服务器。我的应用程序应该仍然可以在离线模式下工作,这意味着当没有互联网连接时,帖子将保存在本地并在下次网络可用时上传。

问题是,如何保证发帖时间准确?我应该依赖手机的本地时间吗?我是否应该尝试创建一些疯狂的代码来定期同步我的服务器时间和设备时间之间的差异,以便我始终可以知道差异(如果有的话)。是否有我不知道的更好的时间管理解决方案?

谢谢,

更新这是我编写的服务器端代码,用于确保服务器和客户端时间完全匹配。希望对其他人有帮助...

    /// <summary>
/// Calculates the actual time the client event occurred.
/// Takes in account that the event and the sending of the
/// event may have happened seprately.
/// </summary>
public static DateTime CalculateClientEventTime(
DateTime serverReceiveTime,
DateTime clientSendTime,
DateTime clientEventTime)
{
// first we need to sync the client and server time
// we also need to subtract any time zone offsets
// then we can subtract the actual time on de ice

DateTime serverReceiveUtc = serverReceiveTime.ToUniversalTime();
DateTime clientSendUtc = clientSendTime.ToUniversalTime();
DateTime clientEventUtc = clientEventTime.ToUniversalTime();

// note: all dates are in utc
// just need to subtract the client TimeSpan from the client Send
// then subtract that TimeSpan from the server utc time

TimeSpan diffBetweenClientEventAndClientSend = (clientSendUtc - clientEventUtc);

return serverReceiveUtc.Subtract(diffBetweenClientEventAndClientSend);
}

最佳答案

我建议您执行以下操作:

在线模式:当用户发布他们的数据时从您的服务器获取时间。

离线模式:通过手机节省时间。上网时,提交所有保存的数据,以及手机的当前时间。计算手机时间和服务器时间之间的差异以获得实时时间。

关于windows-phone-7 - 对于时间敏感的应用程序(Windows Phone 7),我应该依赖本地电话的时间吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3852036/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com