在【Xamarin+Prism小試牛刀:定制跨平臺(tái)Outlook郵箱應(yīng)用】中提到過(guò)以下錯(cuò)誤,不知道大伙還記得不:

無(wú)法安裝程序包“Microsoft.Identity.Client 1.0.304142221-alpha”。你正在嘗試將此程序包安裝到目標(biāo)為“.NETPortable,Version=v4.5,Profile=Profile111”的項(xiàng)目中,但該程序包不包含任何與該框架兼容的程序集引用或內(nèi)容文件。有關(guān)詳細(xì)信息,請(qǐng)聯(lián)系程序包作者。

不只是Microsoft.Identity.Client 有以上錯(cuò)誤,有名的條形碼二維碼類庫(kù)ZXing.Net.Mobile等也只支持Profile7。那Profile是什么?Profile111又是什么了?今天一一為你揭秘。

PCL (Portable Class Library)

PCL是跨平臺(tái)代碼共享的一種設(shè)計(jì)方式,簡(jiǎn)稱可移植類庫(kù)。Xamarin.Adroid,Xamarin.iOS.UWP都可以直接參照調(diào)用。主要是將平臺(tái)無(wú)關(guān)的業(yè)務(wù)代碼創(chuàng)建為PCL類庫(kù),不過(guò)隨著MVVM框架的流行,Xamarin.Forms已經(jīng)將View,ViewModel,Model都移植到了PCL類庫(kù),部分平臺(tái)依賴比較強(qiáng)就分平臺(tái)實(shí)現(xiàn)。

Profile

PCL類庫(kù)對(duì)應(yīng)的平臺(tái)集合不一樣,對(duì)應(yīng)的Profile版本也不一樣。如果自定義的PCL類庫(kù)與Nuge上PCL包的Profile不一致,將導(dǎo)致開(kāi)題的錯(cuò)誤無(wú)法安裝。

image

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式