Überspringen der erneuten Signierung von Apps auf privaten Geräten in AWS Device Farm - AWS Device Farm

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Überspringen der erneuten Signierung von Apps auf privaten Geräten in AWS Device Farm

Das Signieren von Apps ist ein Prozess, bei dem ein App-Paket (z. B. APK, IPA) mit einem privaten Schlüssel digital signiert wird, bevor es auf einem Gerät installiert oder in einem App Store wie dem Google Play Store oder dem Apple App Store veröffentlicht werden kann. Um das Testen zu optimieren, indem die Anzahl der benötigten Signaturen und Profile reduziert und die Datensicherheit auf Remote-Geräten erhöht wird, signiert AWS Device Farm Ihre App erneut, nachdem sie in den Service hochgeladen wurde.

Sobald Sie Ihre App auf AWS Device Farm hochgeladen haben, generiert der Service mithilfe seiner eigenen Signaturzertifikate und Bereitstellungsprofile eine neue Signatur für die App. Dieser Prozess ersetzt die ursprüngliche App-Signatur durch die Signatur von AWS Device Farm. Die neu signierte App wird dann auf den von AWS Device Farm bereitgestellten Testgeräten installiert. Die neue Signatur ermöglicht die Installation und Ausführung der App auf diesen Geräten, ohne dass die ursprünglichen Entwicklerzertifikate erforderlich sind.

Auf iOS ersetzen wir das eingebettete Bereitstellungsprofil durch ein Platzhalterprofil und kündigen die App. Wenn Sie es angeben, fügen wir dem Anwendungspaket vor der Installation zusätzliche Daten hinzu, sodass die Daten in der Sandbox Ihrer App vorhanden sind. Wenn Sie die iOS-App kündigen, werden bestimmte Rechte entfernt. Dazu gehören App Group, zugehörige Domains, Game Center,, HealthKit, HomeKit Konfiguration von drahtlosem Zubehör, In-App-Kauf, Inter-App-Audio, Apple Pay, Push-Benachrichtigungen sowie VPN-Konfiguration und -Steuerung.

Auf Android kündigen wir die App. Dadurch können Funktionen beeinträchtigt werden, die von der App-Signatur abhängen, z. B. die Google Maps Android API. Es kann auch die Erkennung von Piraterie und Manipulation auslösen, die in Produkten wie zum Beispiel verfügbar sind. DexGuard Bei integrierten Tests können wir das Manifest so ändern, dass es die erforderlichen Berechtigungen für die Erfassung und Speicherung von Screenshots enthält.

Wenn Sie private Geräte verwenden, können Sie den Schritt überspringen, bei dem AWS Device Farm Ihre App erneut signiert. Dies unterscheidet sich von öffentlichen Geräten, bei denen Device Farm Ihre App auf den Android- und iOS-Plattformen immer neu signiert.

Sie können die erneute App-Signatur überspringen, wenn Sie eine Remote-Zugriffssitzung oder einen Testlauf erstellen . Dies kann hilfreich sein, wenn Ihre App über Funktionen verfügt, die nicht mehr funktionieren, wenn Device Farm Ihre App erneut signiert. Beispielsweise funktionieren Push-Benachrichtigungen möglicherweise nicht mehr, nachdem eine erneute Signatur durchgeführt wurde. Weitere Informationen zu den Änderungen, die Device Farm beim Testen Ihrer App vornimmt, finden Sie in den häufig gestellten Fragen zu AWS Device Farm oder auf der Apps-Seite.

Um die erneute Signatur der App für einen Testlauf zu überspringen, wählen Sie beim Erstellen des Testlaufs die Option Skip app re-signing (Überspringen der erneuten Signatur von Apps) auf der Seite Configure (Konfigurieren) aus.

Wählen Sie „Skip app re-signing“ (Erneute Signatur der App überspringen), wenn Sie private Geräte-Instances bei einem Testlauf verwenden

Anmerkung

Wenn Sie das XCTest-Framework verwenden, steht die Option Skip app re-signing (Überspringen der erneuten Signatur von Apps) nicht zur Verfügung. Weitere Informationen finden Sie unter Arbeiten mit XCTest für iOS und AWS Device Farm.

Zusätzliche Schritte zum Konfigurieren Ihrer App-Signatureinstellungen variieren, je nachdem, ob Sie private Android- oder iOS-Geräte verwenden.

Das erneute Signieren von Apps auf Android-Geräten wird übersprungen

Beim Testen Ihrer App auf einem privaten Android-Gerät, wählen Sie Skip app re-signing (Überspringen der erneuten Signatur von Apps), wenn Sie Ihren Testlauf oder Ihre Remote-Zugriffssitzung erstellen. Weitere Konfigurationsarbeiten sind nicht erforderlich.

Das erneute Signieren von Apps auf iOS-Geräten wird übersprungen

Apple erfordert eine Signatur zum Testen der App, bevor Sie sie auf ein Gerät laden können. Für iOS-Geräte haben Sie zwei Möglichkeiten, Ihre App zu signieren.

  • Wenn Sie ein internes Entwickler-Profil (Enterprise) verwenden, können Sie diesen Schritt überspringen und mit dem nächsten Abschnitt, Eine Fernzugriffssitzung erstellen, um Ihrer iOS-App zu vertrauen, fortfahren.

  • Wenn Sie ein Ad-hoc-Entwicklungsprofil für iOS-Apps verwenden, müssen Sie zunächst das Gerät bei Ihrem Apple-Entwicklerkonto registrieren und anschließend Ihr Bereitstellungsprofil mit dem privaten Gerät aktualisieren. Anschließend müssen Sie Ihre App mit dem aktualisierten Bereitstellungsprofil erneut signieren. Anschließend können Sie Ihre neu signierte App in Device Farm ausführen.

So registrieren Sie ein Gerät mit einem Ad-hoc-Entwicklungs-Bereitstellungsprofil für iOS-Apps
  1. Melden Sie sich bei Ihrem Apple-Entwicklerkonto an.

  2. Navigieren Sie zu dem Abschnitt Certificates, IDs and Profiles (Zertifikate, IDs und Profile) der Konsole.

  3. Gehen Sie zu Devices (Geräte).

  4. Registrieren Sie das Geräts bei Ihrem Apple-Entwicklerkonto. Um den Namen und die UDID des Geräts abzurufen, verwenden Sie den ListDeviceInstances Betrieb der Device Farm API.

  5. Gehen Sie zu Ihrem Bereitstellungsprofil und wählen Sie Edit (Bearbeiten) aus.

  6. Wählen Sie das Gerät aus der Liste aus.

  7. Rufen Sie in Xcode Ihr aktualisiertes Bereitstellungsprofil ab und signieren Sie die App erneut.

Weitere Konfigurationsarbeiten sind nicht erforderlich. Sie können jetzt eine Remote-Zugriffssitzung oder einen Testlauf erstellen und dann Skip app re-signing (Überspringen der erneuten Signatur von Apps) auswählen.

Eine Fernzugriffssitzung erstellen, um Ihrer iOS-App zu vertrauen

Wenn Sie ein internes Entwickler-Bereitstellungsprofil (Enterprise) verwenden, müssen Sie ein einmaliges Verfahren ausführen, um dem internen App-Entwicklerzertifikat auf jedem Ihrer Geräte zu vertrauen.

Dazu können Sie entweder die zu testende App auf dem privaten Gerät installieren oder Sie können eine "Dummy"-App installieren, die mit demselben Zertifikat signiert ist, wie die App, die Sie testen möchten. Die Installation einer Dummy-App, die mit demselben Zertifikat signiert wurde, bietet einen Vorteil. Sobald Sie dem Konfigurationsprofil oder dem Enterprise App-Entwickler vertrauen, werden allen Apps von diesem Entwickler auf dem privaten Gerät vertraut, bis Sie diese Apps löschen. Wenn Sie also eine neue Version der App hochladen, müssen Sie nicht erneut dem App-Entwickler vertrauen. Dies ist besonders nützlich, wenn Sie Testautomatisierungen ausführen und nicht bei jedem Testen Ihrer App eine Remote-Zugriffssitzung erstellen wollen.

Bevor Sie Ihre Fernzugriffssitzung starten, folgen Sie den Schritten unter Erstellen eines Instance-Profils So erstellen oder ändern Sie ein Instanzprofil in Device Farm. Fügen Sie im Instanzprofil die Bundle-ID der Test-App oder Dummy-App zur Einstellung Pakete von der Bereinigung ausschließen hinzu. Hängen Sie dann das Instanzprofil an die private Geräteinstanz an, um sicherzustellen, dass Device Farm diese App nicht vom Gerät entfernt, bevor ein neuer Testlauf gestartet wird. Auf diese Weise wird sichergestellt, dass Ihr Entwicklerzertifikat vertrauenswürdig bleibt.

Sie können die "Dummy"-App unter Verwendung einer Remote-Zugriffssitzung auf das Gerät hochladen, sodass Sie die App starten und dem Entwickler vertrauen können.

  1. Befolgen Sie die Anweisungen unter Erstellen Sie eine Sitzung, um eine Remote-Zugriffssitzung zu erstellen. Verwenden Sie dazu das soeben erstellte Instance-Profil des privaten Geräts. Wenn Sie Ihre Sitzung erstellen, achten Sie darauf, Skip app re-signing (Überspringen der erneuten Signatur von Apps) auszuwählen.

    Überspringen der erneuten Signatur von Apps beim Erstellen einer Remote-Zugriffssitzung

    Wichtig

    Filtern Sie die Liste der Geräte nach privaten Geräten, indem Sie Private device instances only (Nur private Geräte-Instances) auswählen. So stellen Sie sicher, dass Sie ein privates Gerät mit dem richtigen Instance-Profil verwenden.

    Stellen Sie sicher, dass Sie auch die Dummy-App oder die App, die Sie testen möchten, zur Einstellung Pakete von der Bereinigung ausschließen für das Instanzprofil hinzufügen, das an diese Instanz angehängt ist.

  2. Wenn Ihre Remotesitzung gestartet wird, wählen Sie Datei auswählen, um eine Anwendung zu installieren, die Ihr internes Bereitstellungsprofil verwendet.

  3. Starten Sie die App, die Sie gerade hochgeladen haben.

  4. Folgen Sie den Anweisungen, um dem Entwickler-Zertifikat zu vertrauen.

Alle Apps von diesem "Configuration Profile" (Konfigurationsprofil)- oder Enterprise App-Entwickler sind jetzt auf diesem privaten Gerät vertrauenswürdig, bis Sie sie löschen.