gpt4 book ai didi

ios - 当我收到静默推送通知时,iOS 会唤醒我的应用程序吗?(当应用程序未处于运行状态时)

转载 作者:可可西里 更新时间:2023-11-01 03:52:03 25 4
gpt4 key购买 nike

更新问题:

要求是;一旦收到静默通知,我就想运行一个网络服务并在通知栏中显示一个衬里。如果应用程序也被杀死,它必须工作。任何解决方法?

我正在尝试以下方法。

我是 iOS 的新手,我在无声推送通知方面苦苦挣扎,在谷歌上搜索了很多却卡住了。当应用程序未启动时(即当应用程序从应用程序切换器中删除时),当我收到静默推送通知时,iOS 会唤醒我的应用程序吗?

我的负载是

{ 
aps: {
content-available: 1,
sound: ""
}
}

.

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler{

int CA=[[[userInfo valueForKey:@"aps"] valueForKey:@"content-available"] intValue];

if (CA==1) {

my action...

}

completionHandler(UIBackgroundFetchResultNewData);
}

当应用程序处于前台和后台时调用此方法并正常工作。当应用程序未处于运行状态时无法唤醒我的应用程序(即应用程序未启动或从应用程序切换器中终止)..

最佳答案

如果应用程序已从应用程序切换器中删除,iOS 将不会唤醒您的应用程序,因为用户特别要求关闭您的应用程序。

如果用户至少打开您的应用一次,并且没有将其从 App Switcher 中移除,iOS 将唤醒您的应用

我们在服务器端所做的处理是:如果用户的应用程序在我们发送静默通知后的一分钟内没有连接,(您可以根据需要设置),我们会发送另一个非静默推送通知来提醒用户。由于应用程序(未被用户关闭)应自动获取数据,因此应该不到一分钟。

但是为此,您当然需要比简单地发送静默推送更复杂的服务器代码。

编辑:(对这个问题进行投票表明它已经过时了)

这个答案不再正确...您现在可以使用 PushKit唤醒您的应用程序来做一些小事(例如下载小块数据以更新内容),即使该应用程序已从 App Switcher 中删除也是如此。

关于ios - 当我收到静默推送通知时,iOS 会唤醒我的应用程序吗?(当应用程序未处于运行状态时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22937616/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com