開始使用 Xamarin.Essentials

Xamarin.Essentials 提供單一跨平臺 API,可與任何 iOS、Android 或 UWP 應用程式搭配運作,無論使用者介面如何建立,都可以從共用程式代碼存取。 如需有關支援之作業系統的詳細資訊,請參閱平台與功能支援指南

安裝

Xamarin.Essentials 以 NuGet 套件的形式提供,並包含在 Visual Studio 中的每個新專案中。 您也可以使用 Visual Studio 搭配下列步驟,將它新增至任何現有的專案。

  1. 下載並安裝具有適用於 Xamarin 的 Visual Studio 工具Visual Studio

  2. 開啟現有專案,或建立使用 [Visual Studio C#] (Android、iPhone 與 iPad 或跨平台) 下的空白應用程式範本建立新專案。

    重要

    若新增到 UWP 專案,請確保在專案屬性中設定組建 16299 或更高版本。

  3. Xamarin.Essentials NuGet 套件新增至每個項目:

    在 [方案總管] 窗格中,以滑鼠右鍵按一下方案名稱並選取 [管理 NuGet 套件]Xamarin.Essentials搜尋套件並將其安裝到所有專案,包括 Android、iOS、UWP 和 .NET Standard 連結庫。

  4. 在任何 C# 類別中新增 的參考 Xamarin.Essentials ,以參考 API。

    using Xamarin.Essentials;
    
  5. Xamarin.Essentials 需要平臺特定的設定:

    Xamarin.Essentials 支援最低 Android 版本 4.4,對應至 API 層級 19,但編譯的目標 Android 版本必須是 9.0 或 10.0,對應至 API 層級 28 和層級 29。 (在 Visual Studio 中,這兩個版本是在 Android 專案的 [專案屬性] 對話方塊中,於 [Android 指令清單] 索引卷標中設定。在 Visual Studio for Mac 中,他們會在 Android 專案的 [項目選項] 對話方塊中,於 [Android 應用程式] 索引卷標中設定。

    針對 Android 9.0 進行編譯時, Xamarin.Essentials 會安裝其所需的 Xamarin.Android.Support 連結庫 28.0.0.3 版。 您應用程式所需的任何其他 Xamarin.Android.Support 程式庫也都應該使用 NuGet 套件管理員更新到 28.0.0.3 版。 您應用程式使用的所有 Xamarin.Android.Support 程式庫都應該相同,而且至少必須是 28.0.0.3 版。 如果您在解決方案中新增 NuGet 或更新 NuGet 時發生問題,Xamarin.Essentials請參閱疑難解答頁面

    從針對Android 10.0進行編譯時,從1.5.0版開始, Xamarin.Essentials 安裝它所需的AndroidX支援連結庫。 如果您尚未進行轉換,請閱讀 AndroidX 檔

    在 Android 專案的 MainLauncher 或任何啟動時,Xamarin.Essentials必須在 方法中OnCreateActivity初始化:

    protected override void OnCreate(Bundle savedInstanceState) {
        //...
        base.OnCreate(savedInstanceState);
        Xamarin.Essentials.Platform.Init(this, savedInstanceState); // add this line to your code, it may also be called: bundle
        //...
    

    若要處理 Android 上的執行時間權限, Xamarin.Essentials 必須接收任何 OnRequestPermissionsResult。 將下列程式碼新增到所 Activity 類別:

    public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Android.Content.PM.Permission[] grantResults)
    {
        Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    
        base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    }
    
  6. Xamarin.Essentials請遵循指南,讓您複製並貼上每個功能的代碼段。

Xamarin.Essentials - 適用於 Mobile Apps 的跨平臺 API (影片)

其他資源

我們建議新的 Xamarin 開發人員瀏覽開始使用 Xamarin 開發

Xamarin.Essentials請流覽 GitHub 存放庫以查看目前的原始程式碼、接下來要執行範例,以及複製存放庫。 我們非常歡迎社群參與!

流覽 API 檔,以取得 的每個功能Xamarin.Essentials。