在android中实现服务的正确方法

时间:2012-04-18 07:14:12

标签: android android-service aidl

在音乐播放器的背景下,我看到服务现在以两种不同的方式实施。

在第一种方法中,创建.aidl文件并生成存根,并通过将其绑定到主活动来实现服务。

在第二种方法中,主要活动只是一个UI,并且从UI启动播放器时,整个音乐播放活动总是在后台完成(此方法在Android开发者网站上使用)。

我注意到使用aidl是一种非常流行的方法,即使android开发者网站建议另一个。那么使用一种方法比另一种方法有什么优势吗?一种方法更多脂肪还是高效?还有没有其他更好的方法,我还没有遇到过?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

AIDL更多的是在流程之间进行通信 服务是运行进程而不会被杀死的安卓程序。

AIDL(Andoid接口定义语言) 此处发布的问题可能有助于您了解AIDL When to use an aidl based service?

这是来自Andoid docs的服务 http://developer.android.com/reference/android/app/Service.html

以下是有关AIDL的文档 http://developer.android.com/guide/developing/tools/aidl.html

答案 1 :(得分:0)

如果您尝试播放应该在除UI以外的单独线程上运行的音乐,我会使用Async任务。

http://developer.android.com/reference/android/os/AsyncTask.html

查看受保护的方法部分,该部分将显示您需要调用以更新UI的所有功能。

干杯