Update: Charles 3.9.3+ verfügt über eine integrierte Funktion zum Konfigurieren Ihrer iOS-Simulatoren (dh Installieren des Charles SSL-Zertifikats). Dies finden Sie im Menü Hilfe in der Charles-Anwendung. ( Help > SSL Proxying > Install Charles Root Certificate in iOS Simulators
)
Für Charles 3.9.2 gilt Folgendes:
Laden Sie das Konfigurations-Shell-Skript von der Charles Proxy-Website herunter . Ersetzen Sie dann das Skript durch das folgende und führen Sie es auf Ihrem Mac aus:
#/bin/bash
install() {
if [ -f "$SQLITEDBPATH" ]; then
cp -n "$SQLITEDBPATH" "$SQLITEDBPATH.charlesbackup"
sqlite3 "$SQLITEDBPATH" <<EOF
INSERT INTO "tsettings" VALUES(X'189B6E28D1635F3A8325E1E002180DBA2C02C241',X'3123302106035504030C1A436861726C65732050726F78792053534C2050726F7879696E6731243022060355040B0C1B687474703A2F2F636861726C657370726F78792E636F6D2F73736C3111300F060355040A0C08584B3732204C74643111300F06035504070C084175636B6C616E643111300F06035504080C084175636B6C616E64310B3009060355040613024E5A',X'3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D225554462D38223F3E0A3C21444F435459504520706C697374205055424C494320222D2F2F4170706C652F2F44544420504C49535420312E302F2F454E222022687474703A2F2F7777772E6170706C652E636F6D2F445444732F50726F70657274794C6973742D312E302E647464223E0A3C706C6973742076657273696F6E3D22312E30223E0A3C61727261792F3E0A3C2F706C6973743E0A',X'3082045E30820346A003020102020101300D06092A864886F70D01010505003081913123302106035504030C1A436861726C65732050726F78792053534C2050726F7879696E6731243022060355040B0C1B687474703A2F2F636861726C657370726F78792E636F6D2F73736C3111300F060355040A0C08584B3732204C74643111300F06035504070C084175636B6C616E643111300F06035504080C084175636B6C616E64310B3009060355040613024E5A3020180F31383939313233313132303030305A170D3338303932343033313930355A3081913123302106035504030C1A436861726C65732050726F78792053534C2050726F7879696E6731243022060355040B0C1B687474703A2F2F636861726C657370726F78792E636F6D2F73736C3111300F060355040A0C08584B3732204C74643111300F06035504070C084175636B6C616E643111300F06035504080C084175636B6C616E64310B3009060355040613024E5A30820122300D06092A864886F70D01010105000382010F003082010A02820101008349587455EFB272E397A31D3B52D9B13115C93F320766D2D451117F45C40285506027079ED439CABB94D44F1AE136EB1E79BF77ABE43345AD1D436809CF9E035C439272F3CA917DCADD7FBD0E3929F1A345F0B89096130BBD116F8D3AB5655789B7B0831325BD22903F198DA6BDDA30C08DFD17CE9AB51C48555264307BCF789A2B6C48DF4ECAF3EA2C092EE737AD8F397900AC03303BFE2AE43549030A7866CB6FE9B04B9F6EC498B4E7369E99B45491BF093858A77C72F8ADC818E018D413265E39446BE514F78EB57A23AA88F630776F861A9163E04AD38EE8A5C9219D0FC23F6B9A6324455DEA6F4A6A251ECA1FA3D6288CB89FD12A2062A3A015A56F250203010001A381BC3081B9300F0603551D130101FF040530030101FF307706096086480186F842010D046A136853534C2050726F7879696E6720697320656E61626C656420696E20436861726C65732050726F78792E20506C6561736520766973697420687474703A2F2F636861726C657370726F78792E636F6D2F73736C20666F72206D6F726520696E666F726D6174696F6E2E300E0603551D0F0101FF040403020204301D0603551D0E04160414BB27F4CB2EB6DBB058101BBD803F38D208D76129300D06092A864886F70D010105050003820101000041F935F30B209E56360F7E3D9C30314A213323C47EDCEA1467600A50FFE4E8E39DFCA8C8D34463C34745FF04C870F1DF28BB772DB0CF1BCA677B70842C742BC6D5FB00559AD643C6BF2C95BD0B855A961D7D6A3EADA9C642E9A789474C4AD838C6F732D8D859548D30829DF7A32D098FE3F00147DAF08C0B37DD597184C1E27A61EA42050C73994E809013CB21E37BF84BF923BCEFEA6164FD28AB9058CCC48F1F486FC1C47EBD8A9C933F542401B11F36A003E47B141A41C7B326D18D023E11EDB445699AA44800254EA33F174FD5EB1CCCE6A09365751FF905988C06315B5575067BF65EC24CAD1A6A601846D1D2F51F1F420A2762990B044000619D1C84');
EOF
fi
}
for SQLITEDBPATH in ~/Library/Developer/CoreSimulator/Devices/*/data/Library/Keychains/TrustStore.sqlite3; do
echo $SQLITEDBPATH
install
done
echo "The Charles SSL CA Certificate has been installed for the iPhone Simulator"
Einige Dinge zu beachten:
- Sie müssen Charles öffnen, bevor Sie den Simulator starten. Wenn Sie Charles schließen, schlagen Netzwerkanforderungen fehl, bis Sie den Simulator neu starten
- Sie müssen dies jedes Mal tun, wenn Sie im Simulator "Inhalt und Einstellungen zurücksetzen ..."
- Für Xcode 5: Wenn Sie Charles Proxy auf Xcode 5 und früher einrichten möchten, müssen Sie das ursprüngliche Skript nicht ändern. Laden Sie es einfach von der Charles-Website herunter und führen Sie es so aus, wie es ist
Ich habe Charles gerade über den Xcode 7 / iOS9-Simulator getestet. Nur ein paar Hinweise, die ich hinzufügen möchte, wenn Sie Probleme haben:
quelle
Laut Charles Dokumentation
Lies hier
Beenden Sie einfach Ihren Simulator, öffnen Sie Charles und führen Sie die App erneut aus. Danach können Sie Ihre Netzwerkanrufe verfolgen.
HINWEIS: Ihre Netzwerkanrufe schlagen fehl, wenn Sie Charles beenden. Sie müssen also entweder den Simulator beenden und erneut ausführen oder Charles erneut öffnen.
quelle
Eine andere Möglichkeit besteht darin, zum Zertifikat http://charlesproxy.com/charles.crt auf dem Gerät zu navigieren
welches Ihnen den Bildschirm präsentiert:
quelle
Update für iOS 9: Sie müssen App Transport Security deaktivieren, um Charles verwenden zu können!
http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/
quelle
Ich habe das Konfigurations-Shell-Skript auf dieser Seite nicht gesehen. Ich habe folgendes gemacht und es hat bei mir funktioniert:
http://raptureinvenice.com/getting-the-charles-debugging-proxy-to-work-with-ios-and-genymotion/
quelle
Überprüfen Sie dies heraus:
Sie können dies unter folgendem Link überprüfen: http://www.charlesproxy.com/documentation/faqs/ssl-connections-from-within-iphone-applications/
quelle
Das 'Charles Root-Zertifikat in iOS-Simulatoren installieren' funktioniert in der aktuellen Version von CharlesProxy (3.11) mit Xcode 7 / iOS 9-Simulatoren nicht.
Verwenden Sie stattdessen die Option "Charles Root-Zertifikat auf einem mobilen Gerät oder einem Remote-Browser installieren ...". Dadurch erhalten Sie eine URL für das Zertifikat.
Wenn Sie diese URL in Safari im Simulator öffnen, haben Sie die Möglichkeit, das Zertifikat zu installieren.
Sie müssen dann immer noch die App-Transportsicherheit deaktivieren. Ich verstehe nicht, warum dies erforderlich ist, wenn Sie das Zertifikat installiert haben. Ich denke, CharlesProxy verwendet nicht ausreichend große Schlüssel / Signaturen.
quelle
Nur den Simulator (neu) zu starten, nachdem Charles angefangen hat, ihn für mich zu reparieren.
quelle
Für diejenigen, die mit nicht vertrauenswürdigen Verbindungen auf den Simulatoren von Xcode 9 Beta zu kämpfen haben:
Ich weiß nicht, ob das Installationsskript funktioniert oder nicht, aber Sie können das charles-Zertifikat auf dieselbe Weise wie auf einem physischen Gerät installieren - über Safari.
Letzter Schritt, der erforderlich ist (natürlich nach der Installation des Zertifikats entweder über ein Skript oder über Safari): Gehen Sie zu Simluators Einstellungen -> Allgemein -> Über -> Einstellungen für die Zertifikatvertrauensstellung -> Benutzerdefiniertes Stammverzeichnis von Charles Proxy ... -> Aktivieren 💥
quelle
Schritte für iOS-Simulator.
Schritte für iPhone / iPad.
Gehe zu Charles-Menü -> Hilfe -> SSL-Proxy -> Charles Ceritificate auf einem mobilen Gerät oder einem Remote-Browser installieren -> Auswählen -> Popup wird mit den folgenden Schritten angezeigt:
Gehen Sie zu iPhone-Einstellungen -> WLAN -> Klicken Sie auf ausgewähltes WLAN -> HTTP-Proxy -> Proxy konfigurieren -> Wählen Sie Manuell -> Server als 192.168.0.100 und Port als 8888 -> Speichern
Gehe zu iPhone Browser -> Lade chls.pro/ssl -> Es wird unter Popup angezeigt `
Klicken Sie auf die Schaltfläche Zulassen -> Das Profil wird heruntergeladen
quelle
Für mich hat das funktioniert.
Ich habe das Gleiche getan wie im Gerät.
Ich muss dies auf 3 Simulatorinstanzen tun, da XCUI-Automatisierungstests 3 drehen können.
quelle
Es funktioniert für mich, nachdem ich zur Safari (Simulator) gegangen bin und die URL besucht habe:
Bevor ich Charles Root-Zertifikat in iOS-Simulatoren installieren musste (Charles: help / SSLproxying)
Grüße
quelle