2017-07-17 49 views
0

最近我得到了一個項目,這是建立在Mac上的Xamarin。現在,當我嘗試在視覺工作室的MAC上打開此項目(因爲你都知道Xamarin現在是MAC視覺工作室)它顯示了有關Monotouch的一些錯誤。移植到Xamarin.IOS統一API

問題是:我真的需要將應用程序轉換爲統一的API嗎?我知道有官方Xamarin文檔的教程將應用程序更改爲統一API,但是如果有任何其他方式可以在不遷移到統一API的情況下打開應用程序。遷移的優點和缺點是什麼?

enter image description here

回答

1

有相當爲什麼你會考慮更新的幾個原因,但我會強調一些比較重要的。首先考慮到蘋果作爲硬件和軟件的製造商一直在努力保持設備的最新狀態,因爲像iOS應用程序開發商這樣落後的產品可以絕對影響您對應用程序的需求。由於Xamarin停止更新或支持他們的'經典api'功能添加(至於編寫我們的iOS 10.3),它已經成爲推動或跳躍的情況。

隨着Xamarin.iOS 10.0的發佈,計劃在明年秋天完全取消經典支持 。

其次的統一的API需要滿足蘋果期望支持64位體系結構:

新的統一的API都需要支持64位設備從Xamarin.iOS移動應用 架構。截至2月 2015年1月蘋果要求所有提交給iTunes的應用商店支持64位體系結構。

至於你對缺點的關注,我只是說遷移要麼順利,要麼不順利。值得注意的是,'統一api'使用不同的本地數據類型,這可能需要一些解決方法,具體取決於您原始代碼的當前結構。

最大的一點就是我之前提到的在Apples App Store中,如果你保持應用程序與最新SDK,API或Apple決定升級的任何其他應用程序保持同步,那麼它類似於放棄該應用程序。

我已經把下面的一些鏈接可幫助您在遷移過程:

Native Types - 描述,你將需要在一個統一的API應用程序來使用新的本地數據類型。

32/64 bit Platform Considerations - 爲您的應用程序選擇32位和64位模式的注意事項。

Updating Existing iOS Apps - 按照以下步驟更新現有的Xamarin.iOS應用程序以使用統一API。

Binding Objective-C Libraries - 本文檔描述了用於創建Objective-C API的C#綁定的過程,以及Objective-C中的習語如何映射到.NET中使用的習語。如果您僅綁定C API,則應該使用標準的.NET機制,P/Invoke框架。

Binding Definition Reference Guide - 這是參考指南,它描述了綁定作者以驅動綁定生成過程的所有可用屬性。

Updating UI Components - 這是將UI組件更新到統一api中最新版本的過程指南。