活动,服务和之间有什么样的沟通?
我想开发一个Android应用程序,它包含一个Activity和一个Service。该活动启动一个无限期服务流程,该服务将从活动中关闭。不要使用子类IntentService,而是直接使用Service。由onStartCommand和OnDestroy控制。活动,服务和之间有什么样的沟通?
我显然需要将信息从活动传递到服务:服务的状态和一些字符串。
我试图使用LocalBrodcastManager,但是当打开设备或活动进入onPause状态时,消息将会丢失。我试图遵循几个例子,但收效甚微。这尤其是我无法完成它,因为缺少一些信息,显然被视为明显,但并不明显对我说:https://developer.android.com/training/run-background-service/report-status.html
我又试图通过的IBinder(Example: Communication between Activity and Service using Messaging)使用Messenger的,但该计划似乎有点复杂我无法满足我的需求。
我需要的是从我的活动中启动服务(如果使用Messenger,可能会自动绑定服务),服务应该指示活动处于活动状态,然后服务通过GPS LocationListener记录一些点,写入它到一个文件中,应该指出的是,再次活动,即录音,文件大小数据等
你有什么建议使用通过这个信息,你可以提供给我一些例子吗?
我实际上是在一个教程中解释和比较IPC的许多不同的方法,但由于它还没有准备好,并且因为你需要一个简单的修复,我会推荐https://github.com/greenrobot/EventBus。
,也欢迎在一个古老的,但仍然相关的例子我和我的朋友们回到这里发了一阵看:https://github.com/RanNachmany/AndconLab
古德勒克。
您可以配置您的应用程序,以便显示方向更改不会终止并重新启动活动。这可能是解决问题的最简单方法。 –
有趣,但我必须使用?我想这是不可能的,这是强制使用savedInstanceState ... – Paolovip
在清单只是声明,你的'Activity'将处理方向变化本身。重写'onConfigurationChanged()',当调用它时你可以重置内容视图和/或改变你的布局。 –