我正在开发一款针对iOS和Android的跨平台Xamarin应用,使用Stuart Lodge优秀的MvvmCross框架。
Microsoft最近发布了其可移植类库BCL软件包的新版本,Stuart介绍了如何在http://slodge.blogspot.com.au/2013/11/quick-run-through-using-pcls-in.html中使用这些软件包设置项目。
使用PCL配置文件158时,必须添加BCL异步包并进行一些调整才能使iOS项目正常工作。
使用PCL配置文件78时,这似乎是自动运行的,不需要BCL包。
为什么在配置文件78中使用配置文件158?
答案 0 :(得分:15)
Profile158支持更多平台。具体来说,它可以在Silverlight 5上运行,而Profile78则不能。此外,Profile158使用“较旧”的反射API,因此如果您有使用反射的现有代码,则可能更容易移植到Profile158。
其他条件相同,我建议使用Profile78,除非你有理由不这样做。它应该适用于Xamarin,如果没有,那么将其报告为bug。 :)
答案 1 :(得分:6)
除了Daniel Plaisted的评论之外,简介78还缺少更多类型
两者都可以通过为每个平台创建一个具有特定实现的插件或引用具有这些并包装这些类型的旧框架来解决这些问题,请参阅timer-in-portable-library
除此之外,微软还发布了一套强大的功能:Immutable-Collection,
它支持PCL但不支持silverlight,因此在配置文件158中不支持,但在配置文件78中支持。