共用方式為


iOS 功能

在 iOS 上,.NET 多平臺應用程式 UI (.NET MAUI) 應用程式會在沙箱中執行,提供一組規則來限制應用程式與系統資源或使用者數據之間的存取。 Apple 提供 的功能,也稱為 應用程式服務,以擴充功能,並擴大 iOS 應用程式可以執行的功能範圍。 功能可讓您將平臺功能的更深入整合新增至您的應用程式,例如與 Siri 整合。 如需功能的詳細資訊,請參閱 developer.apple.com 的功能。

功能會新增至應用程式的佈建配置檔,並在程式碼簽署應用程式時使用。 布建配置檔必須包含符合您應用程式套件組合識別碼的應用程式識別碼,並啟用必要的功能。 您可以在 Visual Studio 中自動建立布建配置檔,或在 Apple 開發人員帳戶中手動建立。

功能與權利的概念密切相關。 它們都會要求擴充應用程式執行中的沙箱,以提供額外的功能。 開發應用程式時通常會新增權利,而功能通常會在程式代碼簽署應用程式以進行散發時新增。 不過,啟用自動布建時,將特定權利新增至您的應用程式也會在其布建配置檔中更新應用程式的功能。 如需權利的詳細資訊,請參閱 權利

使用 Visual Studio 新增功能

功能可以新增至 Visual Studio 中的佈建配置檔。 此方法需要使用自動布建,而且僅適用於功能子集。 如需自動布建的詳細資訊,請參閱 iOS 應用程式的自動布建。

下列清單顯示可使用 Visual Studio 自動布建的功能:

  • HealthKit
  • HomeKit
  • 熱點組態
  • 應用程式間音訊
  • 多重路徑
  • 網路擴充功能
  • 近距離欄位通訊標記讀取器
  • 個人 VPN
  • Siri
  • 無線配件組態

在 Visual Studio 中,所有功能都會新增至您應用程式的 Entitlements.plist 檔案。 上述功能也會新增至您的布建配置檔。 如需權利的詳細資訊,包括如何將權利檔案新增至專案,請參閱 權利

若要在 Visual Studio 中新增功能:

  1. 在 Visual Studio 中,確定 IDE 已配對至 Mac 組建主機。 如需詳細資訊,請參閱 與Mac配對以進行iOS開發

  2. 在 Visual Studio 中,啟用項目的自動布建。 如需詳細資訊,請參閱 啟用自動布建

  3. 在 Visual Studio 中,將 Entitlements.plist 檔案新增至您的專案。 如需詳細資訊,請參閱 新增 Entitlements.plist 檔案

  4. 方案總管 中,從 .NET MAUI 應用程式專案的 [平臺 iOS] > 資料夾中按兩下 Entitlements.plist 檔案,以在權利編輯器中開啟它。

  5. 在權利編輯器中,選取並設定應用程式所需的任何權利:

    Visual Studio iOS 權利編輯器。

  6. 將變更儲存至您的 Entitlements.plist 檔案,將權利索引鍵/值組新增至檔案,並將應用程式服務新增至您的應用程式識別符。

針對某些功能,您可能也需要在 Info.plist設定隱私權密鑰。

在您的 Apple 開發人員帳戶中新增功能

所有功能都可以新增至您 Apple 開發人員帳戶中的應用程式佈建配置檔。 此方法需要使用手動佈建,並適用於所有功能。 如需手動布建的詳細資訊,請參閱 iOS 應用程式的手動布建。

在 Apple 開發人員帳戶中新增功能是多步驟程式,需要建立應用程式識別碼、建立布建配置檔,以及啟用手動布建。

將新功能新增至布建配置檔時,您也應該將相同的功能新增至應用程式的 Entitlements.plist 檔案,並確定應用程式會使用此檔案。 如需詳細資訊,請參閱 權利。 針對某些功能,您可能也需要在 Info.plist設定隱私權密鑰。

使用應用程式服務建立應用程式識別碼

應用程式標識碼類似於反向 DNS 字串,可唯一識別應用程式,而且必須識別您要散發的應用程式。 應用程式識別碼應該與應用程式的套件組合標識碼相同。

重要

.NET MAUI 應用程式的套件組合識別符會儲存在專案檔中作為 應用程式識別符 屬性。 在 Visual Studio 中,於 方案總管 以滑鼠右鍵按鍵按下 .NET MAUI 應用程式專案,然後選取 [屬性]。 然後,流覽至 [MAUI 共用一般] 索引標籤>。[應用程式識別碼] 欄位會列出套件組合識別碼。

更新 [應用程式識別符] 字段的值時,Info.plist[套件組合標識符] 的值將會自動更新。

應用程式識別碼有兩種類型 - 明確和通配符。 明確的應用程式識別碼對單一應用程式而言是唯一的,而且通常會採用 格式 com.domainname.myid。 明確的應用程式識別碼允許將一個具有相符套件組合標識碼的應用程式安裝到裝置。 啟用應用程式特定功能的應用程式需要明確的應用程式標識碼。

您可以使用下列步驟來建立明確的應用程式識別碼:

  1. 在網頁瀏覽器中,移至 Apple 開發人員帳戶的 [標識符 ] 區段,然後按兩下 + 按鈕。

  2. 在 [註冊新的標識符] 頁面中,選取 [應用程式標識符],然後按兩下 [繼續] 按鈕。

  3. 在 [ 註冊新的標識符 ] 頁面中,選取 [ 應用程式 類型],然後按兩下 [ 繼續] 按鈕。

  4. 在 [註冊應用程式標識符] 頁面中,提供 [描述],並將套件組合標識符設定[明確]。 然後,以 下列格式 com.domainname.myid輸入應用程式識別碼:

    新應用程式識別碼註冊頁面的螢幕快照,其中已填入必要的欄位。

  5. 在 [註冊應用程式識別符] 頁面中,於 [功能和應用程式服務] 索引標籤底下啟用您的必要功能:

    已啟用功能的螢幕快照。

  6. 在 [ 註冊應用程式識別符 ] 頁面中,按兩下 [ 繼續] 按鈕。

  7. 在 [ 確認您的應用程式標識符 ] 頁面中,檢閱資訊,然後按兩下 [ 註冊 ] 按鈕。 如果您的應用程式識別碼成功註冊,您將會回到Apple開發人員帳戶的 [標識符] 區段。

  8. 在 [ 標識符] 頁面中,按下您剛才建立的應用程式識別碼。

  9. 在 [ 編輯您的應用程式識別符組態 ] 頁面中,任何需要額外設定的已啟用功能都會有 [ 設定 ] 按鈕:

    編輯功能的螢幕快照。

    按兩下任何 [設定 ] 按鈕來設定已啟用的功能。 如需詳細資訊,請參閱 在 developer.apple.com 上設定應用程式功能

建立布建配置檔

建立應用程式識別碼之後,您必須建立應用程式識別碼的佈建配置檔。 這需要您先前已建立簽署憑證,並將裝置新增至您的Apple開發人員帳戶。 如需詳細資訊,請參閱 建立簽署憑證新增裝置

您可以使用下列步驟來建立布建設定檔:

  1. 在網頁瀏覽器中,移至 Apple 開發人員帳戶的 [配置檔 ] 區段,然後按鍵 +

  2. 在 [註冊新的佈建配置檔] 頁面的 [開發] 區段中,選取 [iOS 應用程式開發] (或 [散發] 區段中的散發配置檔類型),然後按兩下 [繼續] 按鈕:

    建立 iOS 應用程式開發佈建配置檔的螢幕快照。

  3. 在 [ 產生布建配置檔 ] 頁面中,選取您的應用程式標識符,然後按兩下 [ 繼續] 按鈕:

    將應用程式識別碼新增至布建配置檔的螢幕快照。

  4. 在 [ 產生布建配置檔 ] 頁面中,選取要包含在布建配置檔中的憑證,然後按兩下 [ 繼續 ] 按鈕:

    將憑證新增至布建配置檔的螢幕快照。

  5. 在 [ 產生布建配置檔 ] 頁面中,選取將安裝應用程式的裝置,然後按兩下 [ 繼續] 按鈕:

    將裝置新增至布建配置檔的螢幕快照。

  6. 在 [ 產生布建配置檔 ] 頁面中,提供布建配置檔名稱,然後按兩下 [ 產生] 按鈕:

    命名布建配置檔的螢幕快照。

啟用手動布建

建立布建配置檔之後,Visual Studio 必須下載該配置檔,並設定為專案的布建配置檔:

  1. 在 Visual Studio 中,下載您剛才建立的布建配置檔,使其可供簽署您的應用程式。 如需詳細資訊,請參閱 在Visual Studio 中下載布建配置檔。
  2. 在 Visual Studio 中,為您的專案啟用手動佈建。 如需詳細資訊,請參閱 啟用手動布建

疑難排解

下列清單詳細說明開發使用功能的 .NET MAUI iOS 應用程式時,可能造成問題的常見問題:

  • 請確定已在Apple開發人員帳戶的 [標識符] 區段中建立並註冊正確的應用程式識別碼。
  • 請確定功能已新增至應用程式識別碼,並使用正確的值來設定功能。
  • 請確定布建配置檔已安裝在您的開發計算機上,且應用程式的 Info.plist 檔案使用與您應用程式識別碼完全相同的套件組合識別碼。
  • 確定應用程式的 Entitlements.plist 檔案已啟用正確的權利。
  • 請確定 Info.plist已設定任何必要的隱私權密鑰。
  • 確定應用程式會取用 Entitlements.plist 檔案。