无论应用程序是在后台还是在前台运行,iOS都会在收到推送通知时调用void ReceivedRemoteNotification(UIApplication application, NSDictionary userInfo)
。
当它处于前台时,我希望该应用做出不同的响应。
但是,如何检测它处于哪个状态?
最佳答案
您可以监视应用程序生命周期事件:
public partial class App : Xamarin.Forms.Application
{
public static bool IsInForeground { get; set; } = false;
protected override void OnStart()
{
IsInForeground = true;
}
protected override void OnSleep()
{
IsInForeground = false;
}
protected override void OnResume()
{
IsInForeground = true;
}
}
然后在您的任何页面或服务中检查
App.IsInForeground