繁体   English   中英

检测Android设备何时处于移动的汽车中

[英]Detect when android device is in a moving car

对于个人项目,我试图检测Android设备何时与某人驾驶。 我最初想过使用GPS来确定平均速度,但决定消耗功率并要求用户始终启用GPS。 我听说有人可以告诉有人切换手机信号塔(在Android和iOS上),但有广播意图吗? 我对Android开发很陌生,所以当我相信设备在移动的汽车中时,希望我可以注册广播接收器。

我不确定我是否可以创建自己的广播意图,并且我认为我不能依赖后台进程来始终运行,因为如果需要内存,android可能会杀死它。

作为旁注,我注意到一些应用程序,比如skype,有一个后台进程,即使我强行杀死它也会自动重启。 他们如何做到这一点? 我的想法是有一个广播接收器,当设备移动,打开等等,以重新启动后台进程...是他们做的?

感谢您的任何信息!

如果您使用GOOGLE PLAY SERVICE

为您提供API,您可以获得有关此的详细信息

适用于所有情况,例如车辆的移动,行走,站立等。

此外,还可为您提供各种情况下的可靠性

这是一个很好的解释的链接:

http://developer.android.com/training/location/activity-recognition.html

链接到文档:

https://developer.android.com/reference/com/google/android/gms/location/ActivityRecognition.html

https://developer.android.com/reference/com/google/android/gms/location/DetectedActivity.html

我认为以下教程可以帮到你一点。 我仍然不确定是否可以在广播接收器中捕获位置更改更新。 但您也可以编写您的服务(通常不会被通常的应用程序杀死),它会轮询位置信息并检查是否发生了更改。

我希望这有帮助。 问候

要获得更可靠的服务,请查看START_STICKY: http//developer.android.com/reference/android/app/Service.html#START_STICKY

我建议GPS会给你更好的运动指示,因为你很可能不经常更换塔。 即使是能够使用塔信号对您的位置进行三角测量的映射应用程序也非常不准确。 通常即使信号非常好,他们也无法在1600米范围内对您的位置进行三角测量。

您是否需要改变位置或是您正在寻找的设备移动? 如果你只是在寻找机芯http://developer.android.com/reference/android/hardware/SensorManager.html是一个很好的资源来看待。

你也可以考虑询问用户他们的车里是否有蓝牙套件。 如果他们有你可以找到这个配对的名称,并在连接时你知道他们在车里(或接近它)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM