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

ios - 在后台将位置发送到服务器 - ios 7

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

当应用程序收到静默推送时,我尝试在后台发送用户位置。

我的代码:

application:didReceiveRemoteNotification:fetchCompletionHandler:

看起来像:

UIBackgroundTaskIdentifier bgTask = 0;
bgTask = [[UIApplication sharedApplication]  beginBackgroundTaskWithExpirationHandler:^{
          bgTask = UIBackgroundTaskInvalid;
    }];
[_cllManager startUpdatingLocation];
[[UIApplication sharedApplication] endBackgroundTask:bgTask];

locationManager:didUpdateLocations:

看起来像:

UIBackgroundTaskIdentifier bgTask = 0;
    bgTask = [[UIApplication sharedApplication]  beginBackgroundTaskWithExpirationHandler:^{
              bgTask = UIBackgroundTaskInvalid;
        }];
    // here I'm sending the request to server via AFNetworking
    [_cllManager stopUpdatingLocation];

    [[UIApplication sharedApplication] endBackgroundTask:bgTask];

我试图向自己发送一个无声的推送

  • 推送总是到达我的设备
  • 有时请求会立即发送
  • 有时请求已发送,但我在日志中看不到它
  • 有时请求没有发送 - 但当我打开应用程序时,所有未发送的请求 - 都已发送
  • 有时请求根本未发送

有什么想法吗?



Best Answer-推荐答案


静默推送通知是不可靠的,如果为相同的服务/设备启用了正常推送通知,则不能保证始终在设备上传递。

我的建议是使用 1)苹果显着的位置变化特征。 2)使用区域监控

两者都可以在后台模式下完成。

关于ios - 在后台将位置发送到服务器 - ios 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24139878/

回复

使用道具 举报

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

本版积分规则

关注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