跨平台 iPhone / Android 代码共享

2022-09-01 03:57:26

简单地说:在iPhone和Android版本之间共享/重用代码的最有效方法是什么?

我认为最常见的两种情况是:

  1. 空白板新项目,提前知道有大量可重用的逻辑需要在每个设备上运行。
  2. 现有的iPhone代码库,C,C++和Objective-C的移植到Android NDK或其他方面。

是的,当然,在一个完美的世界里,所有的应用程序都会插入神奇的云中,所有可重用的逻辑都将在Google App Engine或某些网络服务中出现,但这不是这个问题的精神。在经历了iPhone到Android的移植,而根本没有代码重用,并且看到这个人不得不忍受的痛苦之后,我想知道其他人是如何避免的。


答案 1

根据我的经验,您可以使用Android NDK编译C和C++,因此,如果您在iPhone中使用iPhone Obj-C++(.mm)绑定C++ / C引擎,并且在Android中使用Java绑定到同一引擎,则应该完全有可能。

所以C++/C引擎(Android和iPhone的代码库几乎相同)+薄绑定层=可移植代码。


答案 2

就像我刚才告诉问过类似问题的人一样,使用MVC并在C++中实现MC,在obj-c或Java中实现V。