2014-11-04 65 views
1

我目前正在爲我的公司評估Xamarin,目標是開發iOS,稍後可能會安裝Android應用程序。 (Windows Phone或Windows商店應用程序不是我們所關心的)。我們正在考慮將共享功能放到一個通用庫中,而根據Xamarin Docs,PCLs是最好的選擇。然而,爲什麼我不能創建普通的.net類庫並參考它們呢?爲什麼我應該在Xamarin中使用可移植類庫?

Mono作爲Xamarin的基礎,並且在大多數領域都有相當成熟的.net Framework實現,它應該在Android和iOS上都可用,因爲它是Xamarin的一部分。 我是否錯過了一些重要的事實,或者僅僅在我還想開發Windows應用商店應用時才需要PCL?

回答

5

常規.NET庫支持單個目標框架。 Xamarin iOS使用的.NET框架與Xamarin Android或Windows Phone等使用的框架不同。它們都使用「完整」框架的不同子集和變體。因此,針對框架的一種風格編譯的dll不能用於不同的目標。

PCL通過允許您定位多個框架並使用它們都支持的交集功能來避免這種情況。

+0

謝謝你,讓它更清晰。我不知道Xamarin.iOS和Xamarin.Android之間的BCL不同。 – FrequentFlyer 2014-11-05 07:25:14

0

PCL是Xamarin中平臺特定項目之間共享代碼的兩種方式之一(另一種是共享項目)。它們允許您將多個平臺作爲目標,但最終只能使用較小的一組程序。

+1

查看Jason Smith的(Xamarin.Forms領導)最近的推文和隨後的回覆:https://twitter.com/jassmith87/status/529785150842748930 – 2014-11-05 11:40:41

相關問題