2015-04-16 61 views
0

我正在学习Xamarin。我们有两种方法可以跨平台分享我们的代码,即Shared Project and Portable Class LibrariesXamarin构建过程

我想知道发生了什么,详细地说,当我点击Xamarin Studio中的“播放”按钮时。特别是,我对Xamarin的构建过程感兴趣。我还有一个相关的问题:有没有办法修改构建过程?

+0

使用PCL,你可以得到一个单独的dll,它具有一个共享项目,它被分别编译到每个平台中,类似于C++中旧的动态和静态链接库,其中后者的代码链接到生成的二进制文件,而其他文件只包含引用到单独的.dll文件中,现在将成为PCL文件)。 –

回答

1

我不能告诉你在构建过程中发生了什么,但我可以告诉你,这两种类型的共享代码都有优势和缺点。我个人更喜欢使用可移植类库(PCL)的SharedProjects。

原因是PCL提供了PCL配置文件支持的平台的最小公分母。有时可能很烦人。作为您参考的项目中的一个组件,PCL不会被简化。

另一侧的SharedProject将被编译到您的项目中。你可以使用编译器开关等。简化它是在不同项目之间链接文件的更好方式。

Xamarin有一个很好的指南,关于Code sharing options你应该通读。

+0

+1共享项目。应该仍然尝试使用依赖注入/移动平台特定的东西到相应的项目中,但是有时候它太麻烦了,尤其是对于快速测试和解决方法(例如与UI相关或与内部相关的问题)。 –