我有一个使用C#开发软件系统的场景。该系统中的算法已经实现为共享库(但也用C#编写),试图使系统更加模块化,即可以通过添加/删除各种.dll来添加/删除功能。
我感兴趣的是,在非Windows平台上可以轻松地重用现有的代码库。是否有可能:
a)构建整个系统,使其可以在非Windows平台上运行?
b)构建整个系统,以便它可以在Android设备上运行吗?
c)交叉构建组件C#共享库,以便它们可以在基于linux的平台上运行(或通过NDK作为android本机库)?除了对这些选项是否可能感兴趣之外,我还对它们是否明智感兴趣,即重用我们的'是否有意义'你或者真的应该从头开始吗?
答案 0 :(得分:2)
我认为您正在尝试将C#代码移植到NDK中。由于Android NDK支持C ++作为本机语言(和Java的JNI非常相似)但我不知道NDK / JNI中的C#,您可以尝试使用this来帮助您将C#代码移植到C ++中(如果代码移植成功,那么你可以尝试使用NDK / JNI,如果你似乎可行/可能)。对于linux partif,你使用NDK成功地将这些代码移植到了android,它不会是一个大问题,因为android的内核只是linux的一个分支。