我需要在Android中同步获取服务。我确定它已经在运行,我只需要在我的适配器中访问它。一旦服务可用,我应该只通过一个参考,还是我可以用context.getService(...)
来得到它?什么是推荐的解决方案?有没有办法在Android中同步获取服务?
2
A
回答
2
我相信你有一个适配器创建和销毁的活动。因此,适配器的生命周期应该与您的活动的生命周期相匹配。结论是将服务的引用传递给创建的适配器,因为它是绑定和解除绑定服务的活动。 :-)
0
你感兴趣的是制定绑定服务的概念。看看本地服务示例例如Service
SDK页面上:
http://developer.android.com/reference/android/app/Service.html
此示例演示如何绑定到创建这样你可以得到一个常设参考,并使得它直接调用服务当你受束缚时。当您以这种方式绑定/解除绑定到服务时,您也不必担心明确地调用开始和停止。只要至少有一个组件绑定到该服务,该服务就会运行。
希望有帮助!
相关问题
- 1. 有没有办法同步这个?
- 2. 有没有办法从服务器获取WMI.Service?
- 3. 有没有办法测试Android服务中的公共方法?
- 4. 有没有办法从同步服务联系人ID中获取地址簿联系人ID?
- 5. 有没有办法通过服务
- 6. 有没有办法在html表中同步列宽?
- 7. 有没有办法在Vagrant中同步子文件夹?
- 8. 有没有办法在JavaFX 1.2 ListView中同步滚动条?
- 9. 有没有办法在NAudio中同步播放WAV文件?
- 10. 有没有办法从表中获取不同的PartionKeys
- 11. 有没有办法在sql服务器中编写异步sql查询
- 12. 有没有办法来获取手机
- 13. 有没有办法加快SQLite获取?
- 14. 有没有办法从同一台服务器上运行的代码获取服务器指纹?
- 15. 有没有办法在AJAX-web服务中捕获所有错误?
- 16. 有没有办法在ASP.NET中的web服务中使用System.Drawing?
- 17. 有没有办法在改造呼叫中获得服务方法名称?
- 18. 有没有办法测试android服务的方向变化?
- 19. 有没有办法查看Android Google服务源代码?
- 20. Android Binder IPC addService:有没有办法再次删除服务?
- 21. 有没有办法在spritekit中读取/获取fps swift
- 22. 有没有办法在c#中动态获取方法名?
- 23. 有没有办法在PHP SDK中从Parse获取所有类?
- 24. 有没有办法在NSUserDefaults中获取所有值?
- 25. 有没有办法同步不同的Word文档的部分?
- 26. 有没有办法同步等待在Javascript中完成递归异步函数?
- 27. 有没有办法在PHP/WordPress中托管Axis2服务?
- 28. 在java中,有没有办法检查Windows服务的状态?
- 29. 有没有办法在Access 97 VBA中使用Web服务?
- 30. 有没有办法在灰熊服务器中删除标题?
但绑定到服务是异步的,所以这不是一个同步解决方案。 – Leo 2011-03-09 21:15:42
确实如此,但Binder界面是以请求的方式直接访问服务对象的唯一途径。在需要服务时不会执行绑定操作,而是以遵循活动或其他系统组件的生命周期的方式进行绑定操作。可能需要更多关于该问题的信息来提出更好的解决方案。 – Devunwired 2011-03-09 21:25:18
@Devunwired根据你需要访问服务的时间/地点,这可能只是一个设计缺点。我真的想要访问Activity.onResume()中的服务。然而,我已经尝试在Application.onCreate()和Activity.onCreate()中调用bindService(),但Activity.onResume()运行时不会调用ServiceConnection.onServiceConnected()。看起来,生命周期事件以ServiceConnection.onServiceConnected()不会运行的方式紧接着排队,直到Activity已经运行。如果你有任何想法,我想听听他们。 – spaaarky21 2013-12-01 08:37:37