草庐IT

ios - 监控重大位置变化,应用程序关闭 GPS 信号(箭头)

coder 2023-09-27 原文

首先我希望不要重复任何主题,在提问之前我已经花了很多时间在网上阅读有关此内容的内容。

我正在为 iOS => 5 开发一个应用程序,我需要获取用户位置,但我不需要总是非常准确的位置,所以当应用程序进入后台时,我将正常位置模式更改为重要位置更改,当应用程序出现在前台时,我停止了重要的位置更改模式并恢复了正常的位置模式,一切正常,

我的问题是当应用程序进入后台模式甚至用户关闭应用程序时,GPS 信号(紫色箭头)仍然始终出现,即使在重新启动设备后,唯一让它消失的方法是卸载或在应用程序进入后台时禁用显着的位置更改,但我需要此模式在用户进入后台模式时工作,而不是在应用程序被终止时工作。

我不知道如何在用户终止应用程序时停止服务...因为如果您开启了多任务,则不会调用事件“applicationWillTerminate”。

我的主要原因是因为我不希望紫色箭头总是出现,甚至应用程序被杀死是因为我不希望用户认为应用程序正在耗尽电池......所以用户不会想要已安装应用。

第一个问题:开启显着位置变更后,一直出现紫色箭头,甚至被kill,这是否正常?

第二个问题:有什么办法可以改变这个,至少在应用被杀死以隐藏紫色箭头时停止服务?

谢谢大家。 如果有什么不对,请原谅我的英语。

最佳答案

经过几天的研究以确定这项服务,似乎没有办法在没有顶部栏中的箭头的情况下在后台使用重要的位置变化。我一直在测试不同的应用程序并通过互联网阅读,但没有解决这个问题。

解决此问题的唯一“方法”是在应用程序中禁用多任务模式并禁用事件“applicationWillTerminate”中的重要位置更改但没有意义......我总是不会丢失后台位置仅当应用程序被终止时...所以没有用。

这很糟糕......这是一项非常好的服务,可以获取位置以节省电池电量,但作为用户和开发人员,我不希望应用程序即使在应用程序被终止后也始终显示此图标,作为开发人员我不想要人们出于这个原因卸载了该应用程序,作为普通用户,我不知道这个图标是什么意思,如果是正常的 GPS 或重要位置发生变化,这是什么意思……我的电池是否正在耗尽。

在后台任务中获取位置的另一个选项,但对电池有很大影响....

我希望苹果在未来的版本中修复这个问题......至少添加一个新箭头或仅在新位置到达时显示而不是总是显示或允许在应用程序被终止时弯腰。

所有这些都是在 iOS - 6.1 上研究过的

感谢大家。

关于ios - 监控重大位置变化,应用程序关闭 GPS 信号(箭头),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15620304/

有关ios - 监控重大位置变化,应用程序关闭 GPS 信号(箭头)的更多相关文章

  1. ruby - 将差异补丁应用于字符串/文件 - 2

    对于具有离线功能的智能手机应用程序,我正在为Xml文件创建单向文本同步。我希望我的服务器将增量/差异(例如GNU差异补丁)发送到目标设备。这是计划:Time=0Server:hasversion_1ofXmlfile(~800kiB)Client:hasversion_1ofXmlfile(~800kiB)Time=1Server:hasversion_1andversion_2ofXmlfile(each~800kiB)computesdeltaoftheseversions(=patch)(~10kiB)sendspatchtoClient(~10kiBtransferred)Cl

  2. ruby-on-rails - Rails 应用程序之间的通信 - 2

    我构建了两个需要相互通信和发送文件的Rails应用程序。例如,一个Rails应用程序会发送请求以查看其他应用程序数据库中的表。然后另一个应用程序将呈现该表的json并将其发回。我还希望一个应用程序将存储在其公共(public)目录中的文本文件发送到另一个应用程序的公共(public)目录。我从来没有做过这样的事情,所以我什至不知道从哪里开始。任何帮助,将不胜感激。谢谢! 最佳答案 无论Rails是什么,几乎所有Web应用程序都有您的要求,大多数现代Web应用程序都需要相互通信。但是有一个小小的理解需要你坚持下去,网站不应直接访问彼此

  3. ruby - 无法运行 Rails 2.x 应用程序 - 2

    我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby​​:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r

  4. ruby-on-rails - Rails 应用程序中的 Rails : How are you using application_controller. rb 是新手吗? - 2

    刚入门rails,开始慢慢理解。有人可以解释或给我一些关于在application_controller中编码的好处或时间和原因的想法吗?有哪些用例。您如何为Rails应用程序使用应用程序Controller?我不想在那里放太多代码,因为据我了解,每个请求都会调用此Controller。这是真的? 最佳答案 ApplicationController实际上是您应用程序中的每个其他Controller都将从中继承的类(尽管这不是强制性的)。我同意不要用太多代码弄乱它并保持干净整洁的态度,尽管在某些情况下ApplicationContr

  5. ruby-on-rails - 如何在我的 Rails 应用程序 View 中打印 ruby​​ 变量的内容? - 2

    我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby​​中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R

  6. ruby - 如何验证 IO.copy_stream 是否成功 - 2

    这里有一个很好的答案解释了如何在Ruby中下载文件而不将其加载到内存中:https://stackoverflow.com/a/29743394/4852737require'open-uri'download=open('http://example.com/image.png')IO.copy_stream(download,'~/image.png')我如何验证下载文件的IO.copy_stream调用是否真的成功——这意味着下载的文件与我打算下载的文件完全相同,而不是下载一半的损坏文件?documentation说IO.copy_stream返回它复制的字节数,但是当我还没有下

  7. Ruby 文件 IO 定界符? - 2

    我正在尝试解析一个文本文件,该文件每行包含可变数量的单词和数字,如下所示:foo4.500bar3.001.33foobar如何读取由空格而不是换行符分隔的文件?有什么方法可以设置File("file.txt").foreach方法以使用空格而不是换行符作为分隔符? 最佳答案 接受的答案将slurp文件,这可能是大文本文件的问题。更好的解决方案是IO.foreach.它是惯用的,将按字符流式传输文件:File.foreach(filename,""){|string|putsstring}包含“thisisanexample”结果的

  8. ruby - 如何关闭 ruby​​ gem "Spreadsheet?"中的文件 - 2

    下面的代码在我第一次运行它时就可以正常工作:require'rubygems'require'spreadsheet'book=Spreadsheet.open'/Users/me/myruby/Mywks.xls'sheet=book.worksheet0row=sheet.row(1)putsrow[1]book.write'/Users/me/myruby/Mywks.xls'当我再次运行它时,我会收到更多消息,例如:/Library/Ruby/Gems/1.8/gems/spreadsheet-0.6.5.9/lib/spreadsheet/excel/reader.rb:11

  9. ruby-on-rails - 启用 Rack::Deflater 时 ETag 发生变化 - 2

    在启用Rack::Deflater来gzip我的响应主体时偶然发现了一些奇怪的东西。也许我遗漏了一些东西,但启用此功能后,响应被压缩,但是资源的ETag在每个请求上都会发生变化。这会强制应用程序每次都响应,而不是发送304。这在没有启用Rack::Deflater的情况下有效,我已经验证页面源没有改变。我正在运行一个使用thin作为Web服务器的Rails应用程序。Gemfile.lockhttps://gist.github.com/2510816有没有什么方法可以让我从Rack中间件获得更多的输出,这样我就可以看到发生了什么?提前致谢。 最佳答案

  10. ruby-on-rails - 如何在 Gem 中获取 Rails 应用程序的根目录 - 2

    是否可以在应用程序中包含的gem代码中知道应用程序的Rails文件系统根目录?这是gem来源的示例:moduleMyGemdefself.included(base)putsRails.root#returnnilendendActionController::Base.send:include,MyGem谢谢,抱歉我的英语不好 最佳答案 我发现解决类似问题的解决方案是使用railtie初始化程序包含我的模块。所以,在你的/lib/mygem/railtie.rbmoduleMyGemclassRailtie使用此代码,您的模块将在

随机推荐