我有一个问题(不是基于代码的)被视为不同应用程序组件之间的通信。
我想写一个“大”的记录/跟踪工具。这个工具确实有3个部分。
在第2部分和第3部分中,我想设置Location API的设置(例如准确度和刷新时间)和传感器API,另外在第3部分中我想激活/停用不同的传感器进行记录。
在第1部分,我的主要活动,我想开始完整的记录/跟踪。
附图中有更多解释。
我在JAVA中编码没问题。我的问题是,我是Android的新手。我对一个活动没有任何问题。但不止一个...... uuuh。我不理解我的MainActivity之间的通信,例如位置活动(图片中的名称)
在JAVA中,我将拥有自己的类Location / Sensor,我将存储我的逻辑。
点击“点击打开跟踪”后,我会创建2个线程(用于位置和传感器),其中将开始跟踪。两者都会将其数据保存在列表中,在我停止跟踪后,它将按照我的要求写入文本文件。
在Android中? 在我的特例中?我有3项活动吗?我是否通过意图进行交流?这有点令人困惑,因为在这种情况下,所有这些Activites都有自己的onCreated()/ onStop()/ ......方法。所以我确实需要从我的活动中分离我的跟踪/记录逻辑,因为我只想选择/设置我的设置,然后关闭我的位置/记录活动以在此之后返回到我的MainActivity。
如果你能推荐一个教程或者帮助我,那会很棒。
答案 0 :(得分:1)
假设您希望在应用程序处于后台时接收位置和传感器事件,我建议的是:
请记住,在服务中进行操作(例如,收听传感器事件)时,设备的应用程序处理器可能会进入休眠状态,您将停止接收事件。为了防止这种情况,你需要获得一个唤醒锁,但要注意不要耗尽电池。此外,当设备重新启动时,您需要重新启用您的位置/警报侦听器。
最后,您最终可能会得到这样的架构: