我做了一些检查然后解雇它,但只有当应用程序在后台时它才能工作。
如何在用户进入应用时触发通知?
我正在使用didReceiveRemoteNotification
方法,但其响应仅在后台而非应用中。我还试图发出通知
viewDidLoad方法,但它也不起作用。
- (void) application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo
fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{
UILocalNotification* n1 = [[UILocalNotification alloc] init];
n1.fireDate = [NSDate dateWithTimeIntervalSinceNow:1];
n1.alertBody = @“test”;
n1.soundName = @"default";
[[UIApplication sharedApplication] scheduleLocalNotification: n1];
completionHandler(UIBackgroundFetchResultNewData);
}
答案 0 :(得分:0)
UILocalNotification
被设计为在用户未使用UILocalNotification
apple documentation
如果您想知道应用程序是否收到UILocalNotification
,您可以使用以下代码。
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
if ([notification.alertBody isEqualToString:@"Application is timeout!"])
{
// show an alert regarding your notification
}
}