带有dll引用的MonoTouch:它适用于真实设备吗?

时间:2013-10-22 13:20:41

标签: dll reference compilation xamarin.ios

我想在不同的项目中组织我的MonoTouch解决方案,以更好地分离各层。

当我添加项目引用时,我收到以下错误:

Add Project Reference Error

如果我尝试不引用项目而不是编译的dll,它会编译并使用模拟器工作(!?)

Add dll Reference Correct

但是当我打开我的包 test.app 文件时,我看到以下别名:

Alias file

我希望看到刚编译的捆绑文件,但我看到原始的dll文件,它们也是链接的!

问题是:如果我编译引用dll文件的项目,它将在真实设备上工作吗?使用这种策略可能有任何问题吗?

谢谢

2 个答案:

答案 0 :(得分:0)

包中包含的dll文件只是用于Reflection的XML存根。这对于Xamarin.iOS(MonoTouch)来说是正常的,不会影响您分发应用的能力。

答案 1 :(得分:0)

您看到的项目引用问题是您的项目是.Net 4.0项目。它需要是一个Xamarin.iOS库项目,因为MonoTouch是.Net 4.0的子集。

虽然可以直接引用dll,但不推荐使用它,因为如果调用引用缺少类型或方法的方法,它可能会在运行时爆炸。

Xamarin正致力于支持PCL以便更轻松地进行项目共享,但目前正在使用iOS库项目。