

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

# AWS Device Farm 中的應用程式
<a name="apps"></a>

下列各節包含 Device Farm 中應用程式行為的相關資訊。

**Topics**
+ [檢測應用程式](#test-runs-instrumenting)
+ [在執行中重新簽署應用程式](#test-runs-app-resigning)
+ [執行中混淆的應用程式](#test-runs-obfuscated-apps)

## 檢測應用程式
<a name="test-runs-instrumenting"></a>

您不需要檢測您的應用程式，也不需要為 Device Farm 提供應用程式的原始碼。您可以提交未經修改的 Android 應用程式。iOS 應用程式必須搭配 **iOS Device (iOS 裝置)** 目標進行建置，而非搭配模擬器。

## 在執行中重新簽署應用程式
<a name="test-runs-app-resigning"></a>

對於 iOS 應用程式，您不需要將任何 Device Farm UUIDs新增至您的佈建設定檔。Device Farm 會將內嵌佈建設定檔取代為萬用字元設定檔，然後重新簽署應用程式。如果您提供輔助資料，Device Farm 會在 Device Farm 安裝之前將其新增至應用程式的套件，以便輔助存在於應用程式的沙盒中。重新簽署應用程式會移除如下授權：App Group、Associated Domains、Game Center、HealthKit、HomeKit、Wireless Accessory Configuration、In-App Purchase、Inter-App Audio、Apple Pay、Push Notifications，以及 VPN Configuration & Control。

對於 Android 應用程式，Device Farm 會重新簽署應用程式。這可能會中斷取決於應用程式簽章的功能 (例如 Google Maps Android API)，或其可能從 DexGuard 這類產品中觸發反盜版或反竄改偵測。

## 執行中混淆的應用程式
<a name="test-runs-obfuscated-apps"></a>

對於 Android 應用程式，如果應用程式混淆，如果您使用 ProGuard，仍然可以使用 Device Farm 對其進行測試。不過，如果您使用 DexGuard 搭配反盜版措施，則 Device Farm 無法針對應用程式重新簽署和執行測試。