Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 当用户显式终止应用程序时,是否有方法调用函数?_Ios_Objective C_Push Notification_Mobile Application - Fatal编程技术网

Ios 当用户显式终止应用程序时,是否有方法调用函数?

Ios 当用户显式终止应用程序时,是否有方法调用函数?,ios,objective-c,push-notification,mobile-application,Ios,Objective C,Push Notification,Mobile Application,我已在我的应用程序中实现firebase推送通知。我正在使用注册表进行远程通知/取消注册远程通知来启用和禁用推送通知。我已经实现了这样的功能:当用户登录且应用程序处于后台状态时,用户将收到推送通知,当用户从应用程序中注销时,将不会收到推送通知(我在注销时调用此功能以禁用推送通知) [[UIApplication sharedApplication]注销远程通知];)。 但主要问题是,当用户显式终止应用程序时,推送通知仍然处于启用状态。 我尝试使用applicationWillTerminate函

我已在我的应用程序中实现firebase推送通知。我正在使用注册表进行远程通知/取消注册远程通知来启用和禁用推送通知。我已经实现了这样的功能:当用户登录且应用程序处于后台状态时,用户将收到推送通知,当用户从应用程序中注销时,将不会收到推送通知(我在注销时调用此功能以禁用推送通知) [[UIApplication sharedApplication]注销远程通知];)。 但主要问题是,当用户显式终止应用程序时,推送通知仍然处于启用状态。
我尝试使用applicationWillTerminate函数,但当我显式终止/终止应用程序时,它会抛出一个错误“来自调试器的消息因信号9而终止”。我知道applicationWillTerminate函数只有在应用程序当前在后台运行且未挂起时才会被调用。有没有办法检查应用程序何时从暂停状态移动到未运行状态?(即,应用程序被最小化,然后用户点击主页按钮两次并清除应用程序)。

当用户明确终止应用程序时,无法运行功能。你可以查阅苹果关于应用程序生命周期的文档-

您是否在applicationWillTerminate委托方法中注销通知

- (void)applicationWillTerminate:(UIApplication *)application;

谢谢布达扬。关于如何在用户显式终止应用程序时注销远程通知的任何建议?苹果的文档清楚地表明,这种方法适用于不支持后台模式的应用程序。因此,您可能可以依赖此委托方法。谢谢Bankim。我已经在使用applicationWillTerminate委托方法,但它不起作用。当我显式地终止应用程序时,它会抛出一个错误:“来自调试器的消息因信号9而终止”。并且应用程序在不调用applicationWillTerminate方法的情况下终止。当用户明确终止应用程序时,您知道其他取消注册通知的方法吗?