我很難找到Xamarin.Forms後臺任務支持文檔。 Xamarin.Forms是否提供對定期後臺任務的支持?Xamarin.Forms是否支持定期後臺任務?
我需要爲Windows Phone 10和Android實現此功能。
我很難找到Xamarin.Forms後臺任務支持文檔。 Xamarin.Forms是否提供對定期後臺任務的支持?Xamarin.Forms是否支持定期後臺任務?
我需要爲Windows Phone 10和Android實現此功能。
XF沒有後臺任務的實現。您將需要本地實現這些。以下是關於如何針對每種類型的項目執行此操作的示例。
UWP
https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/BackgroundTask
的WinRT
https://visualstudiomagazine.com/articles/2013/05/01/background-tasks-in-windows-store-apps.aspx
iOS
僅適用於那些需要iOS的用戶。 https://developer.xamarin.com/guides/ios/application_fundamentals/backgrounding/part_3_ios_backgrounding_techniques/
Xamarin.Forms
走進每個部分更詳細地是https://xamarinhelp.com/xamarin-background-tasks/
是的,但這取決於你需要做什麼。
可以例如使用System.Threading.Timer(.NET類)的活性/服務
private System.Threading.Timer timer;
在活動的OnCreate
TimeSpan timerTime = new TimeSpan(0, 0, 0, 0, 1000);
timer = new System.Threading.Timer(new System.Threading.TimerCallback(OnTimerFired), null, timerTime, timerTime);
在活動的OnDestroy
if (timer != null)
{
timer.Change(System.Threading.Timeout.Infinite, System.Threading.Timeout.Infinite);
timer.Dispose();
timer = null;
}
private void OnTimerFired(object state)
{
Do some periodic job
}
我使用Xamarin.Forms.Device.StartTimer方法,它開始使用該設備的時鐘功能的重複計時器。回調函數返回true時,計時器將保持循環。
http://developer.xamarin.com/api/member/Xamarin.Forms.Device.StartTimer/
謝謝。但我實際上想在未加載應用程序時在後臺運行任務。 –
因此,您可以在後臺使用自己的輔助服務,該服務將持續運行,並將「管理」主應用程序。 或某些「調度程序」 http://stackoverflow.com/questions/14376470/scheduling-recurring-task-in-android – Majkl