企业环境中推送通知的问题

Problems with push notification on Enterprise environment

我遇到了推送通知的问题,这个问题只发生在客户端企业环境中。

问题如下:当我在我这边测试(开发而不是分发)时,我收到通知并且每次都调用 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 并在以下情况下完美运行:

  1. 当应用程序未打开时(不在内存中或暂停的应用程序),并且不在后台或前台
  2. 当应用程序打开但在后台时。
  3. 当应用程序处于前台时。

但是当客户端在他的环境中尝试时(在 mdm 包装之后),在每种情况下都会发生以下情况:

案例 1:工作成功,didReceiveRemoteNotification 方法调用正常。

情况 2:收到通知,但 didReceiveRemoteNotification 未被调用。

情况 3:我在通知中心也没有看到任何通知,也没有调用 didReceiveRemoteNotification

我搜索了任何可以帮助的东西,我只发现有这个 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler 也许是更好的替代品。

还有其他建议吗?有什么要检查或考虑的吗?这可能是一个 iOS 相关的问题吗?由 MDM 配置引起(我知道的远射)?

提前致谢。

我找到了解决办法,我用的这个方法- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler很合适。