加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

打开网址与本地通知ios

发布时间:2020-12-14 18:00:33 所属栏目:百科 来源:网络整理
导读:我一直在寻找答案,但我似乎找不到答案.我想要做的是让我的应用程序在后台运行应用程序时发送本地通知,当用户打开通知时,它会将他们带到网站.我已经完成了所有设置,但它一直打开应用程序,而不是去网站. 我的问题是,这甚至可能吗?如果是这样,请问下面我的代码
我一直在寻找答案,但我似乎找不到答案.我想要做的是让我的应用程序在后台运行应用程序时发送本地通知,当用户打开通知时,它会将他们带到网站.我已经完成了所有设置,但它一直打开应用程序,而不是去网站.

我的问题是,这甚至可能吗?如果是这样,请问下面我的代码出错了?谢谢您的帮助.

码:

– (void)applicationDidEnterBackground:(UIApplication *)应用程序
{
????//使用此方法释放共享资源,保存用户数据,使计时器无效,并存储足够的应用程序状态信息,以便将应用程序恢复到当前状态,以防以后终止.
????//如果您的应用程序支持后台执行,则在用户退出时调用此方法而不是applicationWillTerminate:

NSDate *date = [NSDate date];
    NSDate *futureDate = [date dateByAddingTimeInterval:3];
    notifyAlarm.fireDate = futureDate;
    notifyAlarm.timeZone = [NSTimeZone defaultTimeZone];
    notifyAlarm.repeatInterval = 0;
    notifyAlarm.alertBody = @"Visit Our Website for more info";
    [app scheduleLocalNotification:notifyAlarm];

    if ( [notifyAlarm.alertBody isEqualToString:@"Visit Our Website for more info"] ) {
        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.bluemoonstudios.com.au"]];
    }

解决方法

在您的业务逻辑中

-(void)scheduleNotificationForDate:(NSDate *)fireDate{
    UILocalNotification *notification = [[UILocalNotification alloc] init];

    notification.fireDate = fireDate;
    notification.alertAction = @"View";
    notification.alertBody = @"New Message Received";
    notification.userInfo = @{@"SiteURLKey": @"http://www.google.com"};
    [[UIApplication sharedApplication] scheduleLocalNotification:notification];

}

在你的AppDelegate中

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];

    if(notification != nil){
        NSDictionary *userInfo = notification.userInfo;
        NSURL *siteURL = [NSURL URLWithString:[userInfo objectForKey:@"SiteURLKey"]];

        [[UIApplication sharedApplication] openURL:siteURL];
    }
}


-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification{

    NSDictionary *userInfo = notification.userInfo;
    NSURL *siteURL = [NSURL URLWithString:[userInfo objectForKey:@"SiteURLKey"]];
    [[UIApplication sharedApplication] openURL:siteURL];
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读