对于iOS 9 +,后台Fetch在Xamarin.ios上运行一次
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于iOS 9 +,后台Fetch在Xamarin.ios上运行一次相关的知识,希望对你有一定的参考价值。
我想在Xamarin.ios中进行后台提取。
正如我已经按照本教程:https://github.com/Redth/iOS.BackgroundFetch.Sample,当我运行应用程序时,在模拟器上,在后台获取模式下,应用程序只调用一次PerformFetch方法而不是更多! (我等了1个小时,什么也没发生)
在info.plist中,我打开了后台模式和后台获取,在xml文件中,我有:
<key>UIBackgroundModes</key>
<array>
<string>fetch</string>
</array>
在FinishedLaunching我有:
UIApplication.SharedApplication.SetMinimumBackgroundFetchInterval(UIApplication.BackgroundFetchIntervalMinimum);
这是我的PerformFetch函数:
public override void PerformFetch(UIApplication application, Action<UIBackgroundFetchResult> completionHandler)
{
completionHandler(UIBackgroundFetchResult.NoData);
}
在PerformFetch函数上重复调用是否还需要做其他事情?我在应用程序证书上添加了推送通知,但没有任何改变。
答案
后台提取可能比1小时花费更多时间。您可以设置获取提取所需的最短时间,但不能设置最大值。
系统本身将确定是否有一个好的情况来获取。
更多信息在获取少量内容机会主义部分:https://developer.apple.com/library/content/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html
以上是关于对于iOS 9 +,后台Fetch在Xamarin.ios上运行一次的主要内容,如果未能解决你的问题,请参考以下文章
无法在 ios 9 中为 AVCaptureDevice 访问相机。