對 AWS Device Farm 中的 iOS 應用程式測試進行故障診斷 - AWS Device Farm

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

對 AWS Device Farm 中的 iOS 應用程式測試進行故障診斷

下列主題會列出在上傳 iOS 應用程式測試期間出現的錯誤訊息,並建議解決每個錯誤的解決方法。

注意

以下說明以 Linux x86_64 和 Mac 為基礎。

IOS_APP_UNZIP_FAILED

如果您看到下列訊息,請依照以下步驟修復問題。

警告

無法開啟您的應用程式。請確認檔案是否有效,然後再試一次。

請確認您可以正確解壓縮應用程式套件。在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    有效的 iOS 應用程式套件應產生如下輸出:

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_PAYLOAD_DIR_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

在應用程式中找不到承載目錄。請解壓縮您的應用程式,確認承載目錄位於套件中,然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 iOS 應用程式套件有效,您會找到 Payload 工作目錄內的目錄。

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_APP_DIR_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

在承載目錄中找不到 .app 目錄。請解壓縮您的應用程式,開啟承載目錄,確認目錄中有 .app 目錄,然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 iOS 應用程式套件有效,您會找到 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中 Payload 目錄。

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_PLIST_FILE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

在 .app 目錄中找不到 Info.plist 檔案。請解壓縮您的應用程式,開啟 .app 目錄,確認目錄中有 Info.plist 檔案,然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    如果 iOS 應用程式套件有效,您會找到 Info.plist 檔案位於 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中。

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_CPU_ARCHITECTURE_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

我們在 Info.plist 檔案中找不到CPU架構值。請解壓縮應用程式,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "UIRequiredDeviceCapabilities",然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該找到 Info.plist 檔案位於 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中:

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)
  3. 若要尋找CPU架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist') print info_plist['UIRequiredDeviceCapabilities']

    有效的 iOS 應用程式套件應產生如下輸出:

    ['armv7']

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_PLATFORM_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

在 Info.plist 檔案中找不到平台值。請解壓縮應用程式,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleSupportedPlatforms",然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該找到 Info.plist 檔案位於 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中:

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)
  3. 若要找到平台架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist') print info_plist['CFBundleSupportedPlatforms']

    有效的 iOS 應用程式套件應產生如下輸出:

    ['iPhoneOS']

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_WRONG_PLATFORM_DEVICE_VALUE

如果您看到下列訊息,請依照以下步驟修復問題。

警告

Info.plist 檔案中的平台裝置值錯誤。請解壓縮應用程式,然後在 .app 目錄中開啟 Info.plist 檔案,確認索引鍵 "CFBundleSupportedPlatforms" 的值不包含關鍵字 "simulator",然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該找到 Info.plist 檔案位於 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中:

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)
  3. 若要找到平台架構值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist') print info_plist['CFBundleSupportedPlatforms']

    有效的 iOS 應用程式套件應產生如下輸出:

    ['iPhoneOS']

    如果 iOS 應用程式是有效的,值應不包含關鍵字 simulator

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_FORM_FACTOR_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

在 Info.plist 檔案中找不到表單係數值。請解壓縮應用程式,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "UIDeviceFamily",然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該找到 Info.plist 檔案位於 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中:

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)
  3. 若要找到表單係數值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist') print info_plist['UIDeviceFamily']

    有效的 iOS 應用程式套件應產生如下輸出:

    [1, 2]

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_PACKAGE_NAME_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

在 Info.plist 檔案中找不到套件名稱值。請解壓縮應用程式,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleIdentifier",然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該找到 Info.plist 檔案位於 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中:

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)
  3. 若要找到套件名稱值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist') print info_plist['CFBundleIdentifier']

    有效的 iOS 應用程式套件應產生如下輸出:

    Amazon.AWSDeviceFarmiOSReferenceApp

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試

IOS_APP_EXECUTABLE_VALUE_MISSING

如果您看到下列訊息,請依照以下步驟修復問題。

警告

在 Info.plist 檔案中找不到可執行的值。請解壓縮應用程式,然後在 .app 目錄中開啟 Info.plist 檔案,確認已指定金鑰 "CFBundleExecutable",然後再試一次。

在下列範例中,套件的名稱為 AWSDeviceFarmiOSReferenceApp.ipa

  1. 將您的應用程式套件複製到工作目錄,然後執行下列命令:

    $ unzip AWSDeviceFarmiOSReferenceApp.ipa
  2. 成功解壓縮套件後,您可以透過執行下列命令找到樹狀結構的工作目錄:

    $ tree .

    您應該找到 Info.plist 檔案位於 .app 目錄,例如 AWSDeviceFarmiOSReferenceApp.app 在我們的範例中:

    . `-- Payload (directory) `-- AWSDeviceFarmiOSReferenceApp.app (directory) |-- Info.plist `-- (any other files)
  3. 若要找到可執行的值,您可以使用 Xcode 或 Python 開啟 Info.plist。

    若您是使用 Python,則可透過執行下列命令安裝 biplist 模組:

    $ pip install biplist
  4. 接著,開啟 Python 並執行下列命令:

    import biplist info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist') print info_plist['CFBundleExecutable']

    有效的 iOS 應用程式套件應產生如下輸出:

    AWSDeviceFarmiOSReferenceApp

    如需詳細資訊,請參閱AWS Device Farm 中的 iOS 測試