【问题标题】:Is this a good idea to create a service to make all the hard work for the activity?创建一项服务来为活动付出所有努力是一个好主意吗?
【发布时间】:2010-12-23 18:12:37
【问题描述】:

创建一个为 Activity 完成所有艰苦工作的服务是个好主意吗? IE,Activity 将只关心接口和调用服务,以及它必须需要的其他功能,并且服务将成为适用于 Activity 的“工具”。

【问题讨论】:

    标签: android android-activity android-service android-contentprovider


    【解决方案1】:

    是的,它是...我建议您观看此视频:

    Developing Android REST client applications

    该视频讨论了 REST 客户端应用程序,但同样的技术已被证明适用于许多其他情况。

    【讨论】:

      【解决方案2】:

      嗯。封装对数据的访问可能是一个好主意,尤其是因为它使测试更容易,并为您提供了缓存数据的机会。但不要过度设计。 Cristian 链接的视频中概述的方法对于许多(大多数?)应用程序来说都是多余的。在许多情况下,好的 'ol AsyncTask 对于​​大多数“艰苦的工作”来说已经足够了。如果没有,那么绝对考虑将 IntentService 作为您的下一个选择。在使用 AIDL 和绑定完成完整的服务路线之前,我会考虑这两个选项。如果我需要后台服务(用于通知或数据同步等)并且它与主应用程序共享数据(通常是这种情况),我通常只会走后一条路线。至于视频中的 ContentProvider 模式.. . 个人认为,如果你不想控制数据的缓存(或者数据没有被缓存,并且设备真的是记录系统)并且你想将数据暴露给其他应用程序,我认为这些是值得做的。我几乎总是倾向于将我的应用程序代码暴露给服务接口而不是光标。说真的,不要过度设计。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-01-26
        • 2016-05-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多