【问题标题】:Local Notifications with iOS 8iOS 8 的本地通知
【发布时间】:2015-04-16 06:02:39
【问题描述】:

本地通知在前台运行良好。但是当显示通知横幅时,我需要执行一些后台工作。当出现本地通知时,当我点击横幅时效果很好。

代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
    if (notification)
    {
        NSLog(@"AppDelegate didFinishLaunchingWithOptions");
        [self application:application didReceiveLocalNotification:notification];
    }
    return YES;
}

我的问题类似于this issue

我使用下面的代码来执行后台任务:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
    dispatch_async(dispatch_get_main_queue(), ^{

      [[ReminderManger sharedMager]  handleNotification:[[notification userInfo] objectForKey:@"reminderId"]];

    });

   }

【问题讨论】:

    标签: ios


    【解决方案1】:

    没有办法做到这一点。通知由 iOS 本身处理。如果应用程序会处理这个问题,可能有一些方法可以解决这个问题。我一直在浪费时间,但没有成功。

    您唯一能做的就是从 iOS 获得扩展许可,即您的应用需要在后台执行多任务。然后在后台使您的应用成为发布本地通知,这将随时显示横幅,但您无法自定义横幅。请参阅 Apple 的行“在后台运行的应用程序还可以安排本地通知,以通知用户收到的消息、聊天或更新。”在this link

    现在事情在后台,您无法更改视图,但解析数据,并且基于this,您可以在启动时进行更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多