我正在创建一个包含推送通知的 Xamarin.iOS 应用程序。
我注意到,如果应用程序未运行(不仅仅是在后台运行),当推送通知到达时(带有正确的负载),操作系统将接管通知并将其呈现给用户,如果用户在通知关闭时单击通知,我将能够从 FinishedLaunching 方法的 NSDictionary 选项参数中获取此信息(确定它是否包含 UIApplication.LaunchOptionsRemoteNotificationKey 键)
到目前为止,一切都很好。
但我有两种情况,
1) 推送通知在应用程序运行时到达。 2) 用户在启动应用程序后点击了较早到达的推送通知(应用程序关闭时)
对于这两种情况,都会调用 ReceivedRemoteNotification 方法。
但对于每个场景我想做不同的业务逻辑,我的问题是: 我如何知道场景 1 或场景 2 调用了 ReceivedRemoteNotification?
我是 Xamarin 的新手,我在网上搜索过它,但找不到解决方案。
谁能帮我解决这个问题?
谢谢。
最佳答案
在 didReceiveRemoteNotification 方法中使用以下条件检查应用程序状态,
UIApplicationState state = [[UIApplication sharedApplication] applicationState];
if (state == UIApplicationStateBackground || state == UIApplicationStateInactive)
{//write here...Application opened by tapping notification}
仅供引用-上面的代码在 Objective-c 中
关于ios - Xamarin iOS - 推送通知 - 区分已点击的推送通知已到达,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36384046/