屏幕关闭时的单元位置更新通知

时间:2012-01-18 14:36:01

标签: android location cellid

我正在编写需要不断接收或检查小区位置更新的软件。我遇到的问题是当屏幕关闭时:a)通知停止(使用PhonestateListener); b)当使用计时器检查当前单元的单元信息时,返回旧的单元信息。

我花了很多时间寻找原因并发现了几个关于这个主题的帖子。但是我从来没有找到问题的答案或解决方法,接受让手机不断打开屏幕以获得新的小区位置。

我检查了Android RIL源代码,一旦屏幕关闭,似乎RIL中的广播接收器将屏幕状态设置为关闭并停止来自调制解调器的URC消息。我决定尝试调用这些内部函数,比如重置屏幕状态(错误的解决方案!),但由于我的操作导致系统意图被创建,我一直得到权限错误(我甚至尝试获得su权限)

最后,我尝试直接与调制解调器通信以发送+ CSQ命令(在RIL中使用'invokeOemRilRequestStrings'函数)。但是,该部分失败了,因为我不断收到有关对象类型的错误与预期的类类型不一致...

所以...我想知道是否有人可以指出我的解决方案来完成这件事。或者在没有修改ROM​​的情况下对android进行操作是不可能的?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您是否尝试在具有FOREGROUND优先级的单独Android服务中注册位置更新?