Android - 架构决策

时间:2011-08-23 13:06:02

标签: java android architecture mobile

背景

我正在编写一个具有两个不同功能的应用程序。

  1. 通过指向正确的行进方向和距离,加载GPX文件并指示用户遵循文件中定义的路线。然后将航点标记为已到达,并在必要时选择下一个。
  2. 在标准地图窗口小部件上显示路线。
  3. 当前思考

    我目前的设计是有三个标签:菜单,位置,地图。其中菜单用于加载gpx文件和修改设置; location给出了当前的旅行位置和方向;和地图当然是带有路线覆盖的地图小部件。

    因此,这提供了四个活动(主应用程序和三个选项卡)。

    我需要一些例程来获取当前位置并对其应用逻辑来计算当前最佳位置。另一个跟踪路线和满足路线的例行程序。我的想法是从主活动中产生两个单独的线程(一个用于位置,一个用于路由跟踪),这些线程具有可以由任何活动调用的方法,例如得到位置。路径跟踪还应使用一些回调机制或事件机制,以便在到达航点时通知UI。

    这样,用户界面可以在需要时更新,也可以响应从位置数据驱动的事件。

    问题

    这看起来是一个明智的决定还是我没有考虑过哪些让我感到意外的事情。手机的写作与我通常的票价有很大的不同(有一个UI会发生很大变化)。

1 个答案:

答案 0 :(得分:1)

将位置和路由跟踪逻辑实现为绑定服务可能更有意义,而不是由您的某个活动生成的线程。有关如何在应用程序中设置和使用服务的详细信息,请参阅Services guide topic

除此之外,你的方法对我来说似乎很合理。