我正在设计一个 Android 应用程序,我有几个问题想听听你的意见。
现在,我正在考虑的架构如下:
- 用于用户界面的 Android 应用程序,
- 用于业务逻辑的库(Android 或“纯”Java?),
- 用于访问 SQLLite 数据库的 Android 库(将由业务逻辑使用),
- 用于访问 Wifi/BT 模块的 Android 库(将由业务逻辑使用)。
由于很可能在不久的将来可能会为 Win/Mac/Linux 开发此 Android 应用程序的基于 Java 的版本,因此我试图将业务逻辑与 Android 特定的 API 分开。
基本上,业务逻辑将需要使用嵌入式 SQLite DB 以及使用 BT 适配器并通过 Wifi 访问 Internet,例如,这可以使用两个专用的 Android 库来完成。问题是我希望业务逻辑只是一个“纯”Java 库,而不是建立在 Android 项目之上。根据这种架构是否可行,知道 Android 应用程序可能会有一个配置“模块”负责设置和配置,并在需要时启动两个基于 Android 的库。
当前选择的架构在您看来有意义吗?
您对此申请有何建议:
- 尽可能模块化,具有良好的抽象级别(在 DB 和 BT/Wifi 适配器上),
- 尽可能让业务逻辑与 Android API 保持清晰,
- 只需极少的更改即可使整个解决方案适应经典的 Java 应用程序。
提前感谢您的时间和意见。