我在C#程序集中有很多现有的业务逻辑,我想在iOS项目中重用它们。
我想在MonoDevelop中构建一个库,并从我的Xcode项目中“引用”它(使用.NET术语)。
这可能吗?如果是这样,怎么样?
答案 0 :(得分:1)
这是完全不受支持的功能,但是......
mtouch实用程序的最新版本(5.x及更高版本)缓存了每个程序集的AOT'd程序集代码,它需要为项目所针对的每个体系结构进行编译,作为构建过程的中间步骤。有一个临时目录,它将创建这些文件以编译它们,它不会在构建之间删除(构建优化的一部分)。
如果查看构建输出日志,您将看到它用于每个* .s文件的gcc命令行(您可以复制并粘贴这些* .s文件的路径,甚至是整个gcc行的路径)将它们中的每一个编译成.o文件),但更改最后一个gcc行以编译成* .a文件或在Xcode项目中使用的东西。或者您可以将每个* .s文件复制到Xcode项目中(这可能更容易,也不确定)。
此时,您将以原生库形式获得MonoTouch项目。
然后您只需阅读Mono嵌入API:http://www.mono-project.com/Embedding_Mono
答案 1 :(得分:0)
我不相信这是可能的,对不起。
答案 2 :(得分:0)
为什么不使用MonoTouch?您可以将它用于整个项目或仅用于DLL(我相信)。