微軟在NuGet釋出了Xamarin AndroidX套件正式版,當應用程式中沒有使用Android向後兼容支援函式庫(Support Library)命名空間,就可以利用這個最新發布的套件進行開發。其他還使用Android向後兼容支援函式庫命名空間的應用程式,微軟也對不同狀態提供相對應的解決方案。

由於Android向後兼容支援函式庫(Support Library)版本太多,隨著函式庫複雜性增加,函式庫的命名約定也越來越不一致,原本所有函式庫都遵循特定的命名規則,這個約定的規則標示了最小SDK版本(minSdkVersion),開發者的專案必須要大於或是等於最小SDK版本才能使用,像是v7 appcompat則表示,該支援函式庫將向後相容到Android API 7。

但隨著函式庫和元件的發展,版本號混亂已經對開發者造成困擾,像是元件和套件命名帶有v7字樣,但是其支援最小SDK等級卻可能為14。為了消除這種混亂,Android將向後兼容支援函式庫重構成新的擴充函式庫AndroidX,除了簡化套件名稱外,也能更清楚地標示套件內容和支援的API等級。

為因應Google這項更動,微軟也在去年中,於NuGets向Xamarin開發者釋出AndroidX套件預覽版,而現在這個套件已經成熟,進入正式版本的階段。微軟表示,要將Android專案轉移到AndroidX上是個大工程,因此微軟也根據處於不同狀態的應用程式,提供開發者不同的搬遷做法。

微軟提到,只要應用程式包含Android向後兼容支援函式庫的命名空間,就需要進行搬遷改使用AndroidX命名空間。此時開發者可以使用IDE工具處理大部分的命名空間情境,在Visual Studio 2019的16.5+預覽版中內建AndroidX搬遷工具,開發者需要手動在選項中啟用,之後便能在專案點擊右鍵,在選單找到搬遷至AndroidX的選項,開始專案搬遷程序。微軟提醒,還是會有部分案例搬遷工具無法處理,因此開發者必須要手動更改一些命名空間。

另外,當應用程式存在未搬遷的相依項目,則可以選用Android向後兼容支援函式庫搬遷套件處理,而當開發者的應用程式,不需要對任何的相依項目執行AndroidX命名空間搬遷工作,便可以使用微軟現在發布的AndroidX函式庫。

微軟提到,大部分套件都已經升級支援Android 10與更高版本的AndroidX,從Xamarin.Forms 4.5開始,AndroidX會取代Android向後兼容支援函式庫,之後也會將Xamarin.Essentials搬遷到AndroidX上。


Advertisement

更多 iThome相關內容