Xamarin iOS 后台应用程序终止

Posted

技术标签:

【中文标题】Xamarin iOS 后台应用程序终止【英文标题】:Xamarin iOS backgrounding app termination 【发布时间】:2020-08-27 03:48:09 【问题描述】:

我目前正在为 androidios 开发一个计时器应用程序。暂时我真的更关心iOS,即使在遵循Xamarin关于后台的文档,使用消息中心调用appDelegate.cs类,然后使用平台特定代码启动后台任务之后,我仍然让我的应用程序终止.

有什么方法可以将 iOS 应用程序作为前台服务,就像在 android 上一样。还是后台服务仍然可行?我试图让用户提前 23 小时设置一个计时器并显示倒计时。

【问题讨论】:

没有直接等效于 iOS 上持续运行的 Android 前台服务。 iOS 仅允许某些类型的应用程序“功能”在后台持续运行,即音频播放器、位置跟踪器等……iOS 13 确实添加了BGTaskScheduler 来执行诸如处理照片和标记其中的对象之类的事情(ML培训和/或处理),数据库清理等...在手机充电时,您有(非计量)wifi网络访问等。您可以使用EventKit创建未来的日历和提醒事件,但不是一个连续的后台进程。 【参考方案1】:

对于那些感兴趣的人,我发现的另一个策略是设置一个通知来关闭,不管应用程序是否正在运行。然后,您可以只处理持久性,而不是试图让应用继续运行!

祝大家好运!

【讨论】:

以上是关于Xamarin iOS 后台应用程序终止的主要内容,如果未能解决你的问题,请参考以下文章

对于iOS 9 +,后台Fetch在Xamarin.ios上运行一次

iOS 屏幕截图为来自后台应用程序的 System.Drawing.Bitmap (Xamarin)

后台未调用 DidReceiveRemoteNotification - Xamarin iOS - 推送通知

当应用程序从后台返回时,Xamarin iOS 呈现不同的视图控制器

为啥在 iOS 9.3 中杀死/终止应用程序后后台位置不起作用

Xamarin.Forms iOS - 当设备连接互联网时开始上传数据,即使应用程序当前未处于活动状态或处于后台也是如此