在 Xamarin 表单中检测 iOS 的应用空闲时间段

Posted

技术标签:

【中文标题】在 Xamarin 表单中检测 iOS 的应用空闲时间段【英文标题】:Detect App idle time period for iOS in Xamarin forms 【发布时间】:2018-09-28 06:40:31 【问题描述】:

我最近开始使用 Xamarin 表单,很高兴成为 Xamarin 社区的一员。如果他在应用程序上空闲 10 分钟,我需要踢出已登录的用户。我在 android 部分使用通常的生命周期方法(OnResume/OnPause 的组合)完成了它,但在 ios 应用程序中尚未成功。

我很难通过 Internet 找到解决方案,但目前还没有找到。我也尝试使用一些生命周期方法,如 WillEnterForeground/DidEnterbackground,但由于某种原因,这些方法没有在所需的操作上调用。

仅供参考,我来自 Android 背景,所以不擅长 iOS。 任何帮助将不胜感激,或者如果我遗漏了什么,请告诉我。

【问题讨论】:

WillEnterForeground/DidEnterbackground究竟出了什么问题? 预计调试器应该出现在这个方法中,但实际上它没有出现。 应用在调试会话中运行,点击主页,DidEnterbackground(即applicationDidEnterBackground:)将被调用。 【参考方案1】:

App 类中

DateTime sleepTime;
protected override void OnSleep()

    base.OnSleep();
    sleepTime = DateTime.Now;


protected override void OnResume()

    base.OnResume();
    var sleepDuration = DateTime.Now - sleepTime;

【讨论】:

以上是关于在 Xamarin 表单中检测 iOS 的应用空闲时间段的主要内容,如果未能解决你的问题,请参考以下文章

我的 xamarin 表单 iOS 应用程序的发布版本在应用程序启动时崩溃

Xamarin 表单中是不是有相当于 iOS 的动态系统颜色?

在 iOS 和 ArcGIS Runtime 上使用热重启 Xamarin 表单导致应用程序崩溃

Xamarin 表单选择器确定或取消按钮按下检测

如何在xamarin表单ios中隐藏标签栏导航标题

Xamarin 表单 - Webview 检测 URL 更改