即使应用程序未打开,后台进程也会定期扫描用户的位置并更新本地数据库

2023-11-26

我正在创建一个应用程序,该应用程序每半小时检查一次用户位置并更新本地数据库中的用户位置,然后基于用户的位置运行 CRUD 查询,即使该应用程序未运行也是如此。我该怎么做 ?

我已经提到过这个http://techtej.blogspot.com.es/2011/03/android-thread-constructspart-4.html文章,我仍然对哪种方法是我的结果的正确方法感到困惑?

根据这篇文章,我想要实现的目标有 4 个选项

1)服务:但是由于我觉得对本地数据库的操作会很长,所以我觉得我应该忽略这一点。

2)IntentService:这不能执行多个任务,所以我觉得这对我来说也应该避免,因为我必须获取用户的位置并扫描数据库,更新数据库(3个任务)

3)线程:我不知道当应用程序未打开时如何调用它

4)AsyncTask:我不知道当应用程序未打开时如何调用它。

基本上我正在寻找类似 CRON JOB 的东西,它在处理位置数据时在本地数据库上运行。

如果您能给我链接一些教程并用一个简单的示例来回答,让我了解所有 4 种方法的区别,那就太好了。

// 3 月 16 日编辑: 我读过一些关于 API 21 中引入的 JobScheduler 的内容,但不确定它是否也支持直到 Gingerbread,这是否是解决我的问题的正确方法

Thanx


记录用户位置时,使用带有通知的服务。只是为了创建一个道德负责的应用程序,通知用户该应用程序正在跟踪他们。根据定义,该服务在后台运行。

融合位置提供商setinterval(long) 30 minutes获取间隔。放fastestInterval()当其他应用程序正在使用 GPS 时,需要一分钟才能接收 GPS 数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

即使应用程序未打开,后台进程也会定期扫描用户的位置并更新本地数据库 的相关文章

随机推荐

  • 将文本中的 YouTube URL 替换为其 HTML 嵌入代码

    如果在字符串中找到此函数 则嵌入 YouTube 视频 我的问题是 仅捕获嵌入视频 iframe 如果有更多视频 则仅捕获第一个视频 并忽略字符串的其余部分的最简单方法是什么 function youtube string autoplay
  • 可以跨 APK 共享资源吗?

    是否可以跨 APK 共享资源 例如 应用程序 A 在 APK A 中 可以从应用程序 B 在 APK B 中 加载图标或布局视图吗 您可以利用获取应用程序资源 这样 只要您至少知道包名称以及要加载的资源的 id 或名称 您就可以从其他应用程
  • Rails will_paginate 自定义路线

    如何将 will paginate 与自定义路由一起使用 我的路线中有以下内容 map connect human readable name controller gt tags action gt show 但据我所知 will pag
  • Eclipse 中的 JavaCompiler 为空

    我的 Java 编译器出现一些错误 我在 Eclipse 之外没有收到错误 但它似乎只发生在 Eclipse Indigo 中 这不是必需的 但如果您有答案 我将非常感激 因为它将帮助我更轻松地调试和测试资源 谢谢您阅读此篇 E ToolP
  • Asp.net core Identity“INSERT语句与FOREIGN KEY约束冲突”

    我使用 ASP NET CORE Identity 创建 ASP NET CORE 应用程序 我创建种子类来保存首次启动应用程序的新用户和角色 在这个种子类中 当我将角色添加到用户时 我收到以下错误 INSERT 语句与 FOREIGN K
  • 如何在 JBoss 中使用 Java“热代码替换”?

    我正在运行 JBoss 4 0 3 SP1 CP04 并使用 Eclipse 3 4 1 的调试器连接到它 两者都使用 JDK 1 6 0 11 当我对方法进行微小更改 例如 将逻辑中的 1 更改为 2 并保存它时 我立即收到标题为 热代码
  • JavaScript 中的 HTML 图像到 pdf 转换器

    HTML 代码 img class imagepdf src www images com someimage alt Smiley face height 42 width 42 我想将此图像转换为 pdf 格式 我在用jspdf 为此
  • 实体的键不符合键值编码

    if win Game was won set completed in puzzle and time Calculate seconds taken int timeTaken int NSDate timeIntervalSinceR
  • Bootstrap 按钮在移动设备上“卡住”

    Whenever I click a button with my mobile device android on a twitter boostrap button but button gets odd styling like th
  • 设置 float:left 时将 div 扩展到最大宽度

    我有类似的东西 div style width 100px menu div div content div 两个浮标都是必需的 我希望内容 div 填满整个屏幕 减去菜单的 100 像素 如果我不使用 float 则 div 会完全按其应
  • 用于不平衡多类多标签分类的神经网络

    如何处理训练神经网络时多标签分类结果不平衡的问题 我遇到的解决方案之一是惩罚罕见标记类的错误 这是我设计网络的方式 类数 100 输入层 第一隐藏层和第二层 100 通过 dropout 和 ReLU 全连接 第二个隐藏层的输出是 py x
  • 动态链接器是 Linux 系统上内核或 GCC 库的一部分吗?

    动态链接器 又名程序解释器 链接加载器 是内核或 GCC 库的一部分吗 UPDATE 28 08 16 我发现默认路径为动态链接器每个二进制文件 即链接到共享库 都使用 lib64 ld linux x86 64 so 2是共享库的链接 l
  • 验证信用卡详细信息

    如何验证信用卡 我需要做卢恩检查 黑莓有没有API可以做到这一点 您可以使用以下方法来验证信用卡号 Perform Luhn check public static boolean isCreditCardValid String card
  • Javascript 中变量声明语法(包括全局变量)之间的区别?

    声明变量有什么区别 var a 0 1 这边走 a 0 2 or window a 0 3 在全球范围内 是的 有一些差异 但实际上它们通常并不大 除了你的 2 a 0 A 我强烈建议不要这样做 B 在严格模式下是一个错误 还有第四种方法
  • 如何在端口 80 上运行 Node.js?

    我的目标是在端口 80 上运行 Node js 这是因为我发现某些网络阻止了 Node js 这些网络不允许来自任何其他端口的流量 看来 最好的方法是通过 Node js 代理 Apache 我尝试过使用节点 http 代理做到这一点 但我
  • Java RSA 加密 - 解密 .NET

    我正在使用 RSA 在 JAVA 上进行加密 并尝试使用 NET 进行解密 我提供了我的 JAVA 代码和 NET 代码 希望有人对此类事情有一些经验 JAVA代码 byte modulusBytes Base64 decode xTSiS
  • Arrays.asList 的返回类型是什么?

    我读了这篇文章 java 中 Arrays asList array 与 new ArrayList Arrays asList ia 之间的区别 我对此有一个疑问 我看看这一行 List
  • 如何运行 Maven Surefire 而不将测试结果打印到命令行?

    我正在运行 Maven 3 1 0万火插件 already与 quiet选项 但是它仍然将单元测试的结果打印到命令行 即使它们全部通过 有没有办法让它只打印失败 如果一切正常 我想抑制的输出如下所示 T E S T S Running ne
  • R:如何按列删除重复行[重复]

    这个问题在这里已经有答案了 df lt data frame id c 1 1 1 2 2 gender c Female Female Male Female Male variant c a b c d e gt df id gende
  • 即使应用程序未打开,后台进程也会定期扫描用户的位置并更新本地数据库

    我正在创建一个应用程序 该应用程序每半小时检查一次用户位置并更新本地数据库中的用户位置 然后基于用户的位置运行 CRUD 查询 即使该应用程序未运行也是如此 我该怎么做 我已经提到过这个http techtej blogspot com e