• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 如果app在终止期间发送http请求,服务器会收到吗?

[复制链接]
菜鸟教程小白 发表于 2022-12-13 09:02:32 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我想知道,如果我的 iOS 应用程序正在终止,如果我发送 HTTP 请求通知服务器用户下线,服务器会收到此请求吗?

我的代码如下:

- (void)applicationWillTerminateUIApplication *)application {
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
    NSMutableDictionary *para = [[NSMutableDictionary alloc]initWithCapacity:0];
    [para setObject:[[NSUserDefaults standardUserDefaults] valueForKey"UserBindId"] forKey"unionId"];
    [para setObject(0) forKey"OnlineState"];
    [Post updateOnlineWithParameters:para withBlock:^(NSDictionary *commitResult, NSError *error) {
        NSLog(@"applicationWillTerminate = %@", commitResult);
    }];
}



Best Answer-推荐答案


Executing Finite-Length Tasks例如,当应用进入后台模式时,如何让应用请求一点额外时间(最多 3 分钟,这对于您的目的应该绰绰有余)。

- (void)applicationDidEnterBackgroundUIApplication *)application
{
    bgTask = [application beginBackgroundTaskWithName"GoingOffline" expirationHandler:^{
        // Well, we ran out of time before network request finished ... handle that however you want

        // but tell the OS that we understand, and that the background task is done

        [application endBackgroundTask:bgTask];
        bgTask = UIBackgroundTaskInvalid;
    }];

    NSDictionary *para = @{@"unionID"     : [[NSUserDefaults standardUserDefaults] valueForKey"UserBindId"],
                           @"OnlineState" : @0};

    [Post updateOnlineWithParameters:para withBlock:^(NSDictionary *commitResult, NSError *error) {
        // when done, tell the OS that the background task is done

        [application endBackgroundTask:bgTask];
        bgTask = UIBackgroundTaskInvalid;
    }];
}

我尝试稍微简化您的参数(不需要可变字典......您可以使用字典文字),因此请根据您的需要进行调整。但希望你能按照这里的基本思路,如果你想在应用进入后台时做某事,你必须请求权限。

关于ios - 如果app在终止期间发送http请求,服务器会收到吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31420556/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap