在我最近开始的实习中,我需要将一个相当大的 Visual C/C++ 项目移植到 Android。昨天我问了另一个关于这个话题的问题,寻求一些帮助来寻找移植的概念。我得到了一个建议使用自动化解决方案的答案(例如用于 android 的单声道),但是经过一天对我的概念进行明确的研究后,我倾向于使用“手动解决方案”,这意味着我手动删除所有 Windows 和 Visual 特定的将其替换为 Android 下可用的功能。
现在,我想到的第一件事是首先使用 windows gnu Complier 删除所有 Visual 特定的内容,然后使用 linux gnu Compiler 删除所有与 Windows 相关的内容(然后使用 ndk 使其可在 Android 上运行)。
这意味着我将它从 Windows 移植到 Linux,而不是从 Linux 移植到 Android,假设从 Linux 到 Android 的步骤非常小,因为我希望代码从 Linux 到 Android 几乎可以保持不变,因为 Android 是基于 Linux核心。
现在我的问题是:这是一个好主意,还是从 Linux 移植到 Android 也是一项巨大的努力,所以我会做两次所有工作,一次是从 Windows 到 Linux,另一次是从 Linux 到 Android?!
绝对欢迎提出如何做得更好的建议!
编辑:忘了提一下,这将是一个更大的应用程序的一部分,并且不包含任何 GUI 东西(当然,我知道这是因为,尽管 linux 到 Android 步骤会很繁重),只是上面和下面的组件的接口.