我最近阅读了Gmail 团队的一篇博客文章,内容是他们用于为 Inbox for Gmail 开发不同平台版本的方法。简而言之,他们用 Java 编写所有东西(基本上是为 Android 编写的),但将所有 UI 代码与共享逻辑代码分开。然后对于 iOS,他们以特定于平台的 iOS 方式重新实现 UI,但使用他们开发(并开源)的名为J2ObjC的程序将共享逻辑从 Java 转换为 Objective C。
我知道如何让它在 iOS 上运行,但我应该如何在 Android 上安排课程?我知道我需要为共享逻辑的不同部分创建单独的类,但我实际上如何做到这一点,以便 a)所有共享逻辑都在它自己的目录中,所以我可以轻松地自己引用它,并且 b)我可以仍然从我的活动中引用它。
根据我的搜索,我认为我需要使用MVP模式,但我不是 100% 确定。