2014-08-29 10 views
6

In dem Bemühen, "kann nicht auf [domain] connect" ein Unternehmen iOS-App zu implementieren, habe ich den folgenden Link erstellt:iOS Unternehmen deployement: Mit einem Klick auf itms-Dienste Link führt zu Fehler

Unencoded Version (für leicht zu lesen):

<a href="itms-services://?action=download-manifest&url=https://example.com/api/distribution/ios?token=abc123">Download</a> 

Verschlüsselte Version:

<a href="itms-services://?action=download-manifest&url=https%3A%2F%2Fexample.com%2Fapi%2Fdistribution%2Fios%3Ftoken%3Dabc123">Download</a> 

Der Link richtig codiert ist, wie here und here diskutiert.

Angenommen, das Token des Benutzers ist gültig, wird eine .plist Datei über SSL zurückgegeben, wie in here beschrieben. Die URL der Datei .ipa, auf die in der .plist-Datei verwiesen wird, wird im laufenden Betrieb generiert. Hier ist, was die .plist Datei wie folgt aussieht:

<plist version="1.0"> 
<dict> 
    <key>items</key> 
    <array> 
     <dict> 
      <key>assets</key> 
      <array> 
       <dict> 
        <key>kind</key> 
        <string>software-package</string> 
        <key>url</key> 
        <string>TEMP_URL</string> 
       </dict> 
      </array> 
      <key>metadata</key> 
      <dict> 
       <key>bundle-identifier</key> 
       <string>org.cocos2d.ready-ios</string> 
       <key>bundle-version</key> 
       <string>0.0.1</string> 
       <key>kind</key> 
       <string>software</string> 
       <key>title</key> 
       <string>Ready</string> 
      </dict> 
     </dict> 
    </array> 
</dict> 
</plist> 

Soweit ich das beurteilen kann, unser GoDaddy SSL-Zertifikat auf den trusted list zu sein scheint.

Doch trotz all der oben genannten, nach dem Link tippen und einen Moment warten, erhalte ich folgende Fehlermeldung:

Cannot connect to [domain] 

Dies ist die iPhone-Konsole ausgegeben, nachdem Sie den Link tippen:

Aug 29 07:30:56 My-iPhone wifid[15] <Notice>: WiFi:[431015456.799163]: Client itunesstored set type to background application 
Aug 29 07:30:56 My-iPhone wifid[15] <Notice>: WiFi:[431015456.804319]: BG Application: Not Present, BG Daemon: Present. Daemons: apsd networkd itunesstored 
Aug 29 07:30:56 My-iPhone wifid[15] <Notice>: WiFi:[431015456.806066]: Already connected to [Company Name]. 
Aug 29 07:30:58 My-iPhone itunesstored[100] <Warning>: Could not load download manifest with underlying error: Error Domain=SSErrorDomain Code=2 "Cannot connect to iTunes Store" UserInfo=0x15788270 {NSLocalizedDescription=Cannot connect to iTunes Store} 
Aug 29 07:31:03 My-iPhone wifid[15] <Notice>: WiFi:[431015463.925398]: Client itunesstored set type to normal application 
Aug 29 07:31:03 My-iPhone wifid[15] <Notice>: WiFi:[431015463.928745]: BG Application: Not Present, BG Daemon: Present. Daemons: apsd networkd 

Irgendwelche Ideen?

+0

* "Irgendwelche Ideen?" * - DNS-Problem, Firewall-Problem oder Routenproblem zum Unternehmensserver? – jww

+0

@jww: Danke für den Kommentar. Ich denke nicht, dass es ein DNS-Problem ist, da alle anderen DNS-Lookups gut funktionieren. Ich kann sowohl die .plist-Datei als auch die .ipa-Datei herunterladen, indem ich den Links in einem Browser folge, daher glaube ich nicht, dass es sich um ein Routenproblem handelt. Und ich habe keine Firewalls laufen. –

+0

MIME-Typ auf Server gesetzt werden https://StackOverflow.com/questions/29559793/Cannot-connect-to-example-Com-in-Irio-Enterprise-App –

Antwort

2

Suchen Sie nach abschließenden Schrägstrichen auf Ihrem URL-Link-Wert für TEMP_URL und entfernen Sie sie. Wenn Sie die URL mit abschließenden Schrägstrichen in einem Browser testen, wird sie problemlos heruntergeladen. In der Pliste wird es scheitern.

+1

Ich kann nicht glauben, dass ich das war dumm. Es funktionierte .. Ich löschte die '<' aus '', als ich die Build-Nummer kopiert und eingefügt. VIELEN DANK! – Jann

5

Ich hatte so eine Zeit lang ein Problem und es machte mich verrückt. Ich erhielt das Popup-Fenster "Verbindung zu [Domäne] nicht herstellen" und ich sah den gleichen Fehler im Protokoll "Verbindung zum iTunes Store nicht herstellen".

Das ursprüngliche Problem war, dass ich ein ">" in meiner .plist XML-Datei fehlte.

Aber ich reparierte das fehlende ">" und es funktionierte auf einem anderen ipad. Also, es hätte am originalen ipad funktionieren sollen, oder? Nun, nein, weil das schlechte Plist mit dem Tippfehler immer noch im Cache dieses iPads gewesen sein muss.

Also, die Lösung ist entweder umbenennen die .plist-Datei, oder herunterfahren und "neu starten" das ipad, oder finden Sie eine andere Möglichkeit, den ipad Cache der schlechten plist-Datei zu löschen.

+0

bei welcher Zeile diese> fehlte. –

+0

Es war egal, wo das> fehlte, da der Gesamteffekt eines fehlenden> die XML-Datei .plist ungültig machte. Ein Beispiel wäre das fehlende> in einer Zeile wie '', wo das ">" nach ' blalond

+0

Das scheint es für mich behoben zu haben. Nachdem ich das Syntaxproblem in meiner .plist-Datei behoben hatte, musste ich mein iPad neu starten. Ich hatte ein Ampersand in den Titel String gesetzt. Das hat die XML-Datei, die es aussieht, gebrochen. Vielleicht ein &? –

2

Nicht sicher, dass dies dem ursprünglichen Poster geholfen hätte, da ich nicht weiß, wie itms-services funktioniert, aber es könnte anderen helfen, den Fehler "Kann nicht mit [Domäne] verbinden" zu sehen.

Wir haben versucht, eine Enterprise-Bereitstellung über Safari zu installieren und diesen Fehler weiterhin angezeigt. Der Plist war in Ordnung und die ipa-Datei, auf die er zeigte, würde heruntergeladen, wenn wir die URL direkt eingegeben hätten. Wir stellten jedoch fest, dass wir die erste (vor der Installation) Verbindung über http erstellten. Wenn Sie dies in https änderten, konnte die Installation wie erwartet fortgesetzt werden.

7

Ich hatte dieses Problem und keine der dokumentierten Lösungen hier oder in anderen Antworten funktionierte für mich. Mit einem korrekten SSL-Zertifikat war es möglich, den Plist in Safari auf dem Zielgerät ohne Probleme zu laden.Der Versuch, über die Verknüpfung "itms-services: // ..." zu installieren, würde jedoch immer mit dem Fehler "Verbindung mit [Domäne] nicht möglich" fehlschlagen.

Das Problem war das Zwischenprodukt SSL-Zertifikat wurde nicht auf dem Webserver konfiguriert. Web-Browser hatte kein Problem damit, SSL gültig war, aber das Gerät an einen Mac anschließen, und Anzeigen des Protokolls durch die Platte Geräte in XCode zeigte die folgenden Fehler:

iPhone itunesstored[83] <Warning>: Could not load download manifest with underlying error: Error Domain=NSURLErrorDomain Code=-1202 "Cannot connect to the Store".... "The certificate for this server is invalid. You might be connecting to a server that is pretending to be “[mydomain]”, which could put your confidential information at risk." 

Installation des Zwischen SSL-Zertifikat auf Apache gelöst dieses Problem.

+0

Danke! Ich hatte auch dieses Problem! Jetzt gelöst! –

+0

Gleiches! Ich wusste nicht, dass ich ein Problem hatte, aber ich benutzte [dies] (https://casecurity.ssllabs.com/), um mein SSL-Zertifikat-Setup auf meinem Server zu überprüfen und herauszufinden, was falsch war. und sicher genug das Zwischenzertifikat war das Problem. – jrobe

+0

Ich habe den gleichen Fehler. Wenn ich mein eigenes SSL-Zertifikat selbst signiert habe, um die Webseite auf meinem eigenen Computer zu testen, wie kann ich ein SSL-Zwischenzertifikat erstellen? (Website, die ich verwendet habe, um meine eigenen Sachen zu erstellen: https://getgrav.org/blog/mac-os-x-apache-setup-ssl) – finneycanhelp

2

Ich erhielt den gleichen Fehler.

In meinem Fall war die ".plist" nicht zugänglich.

Meine Lösung bestand darin, die passende Mime-Typen zu der Website hinzufügen, die von Internetinformationsdienste (IIS) gehostet wird.

Nämlich, ".ipa" und ".plist".

enter image description here

1

Wir wegen des internen Datums des Gerätes gleiches Problem konfrontiert wurde den in gültigen Datumsbereich festgelegt. (1. Januar 1970)

Ungültiges Datum ungültig auch das SSL-Zertifikat und 7.1 + Geräte erfordert gültige HTTPS-Verbindungen für die Installation von Unternehmensanwendungen.

Wir erreichen dieses Problem mit dem Ändern des Gerätedatums auf das aktuelle Datum.

1

Wenn Sie alles andere versucht haben und immer noch den Fehler "Kann nicht mit [Domäne] verbinden" erhalten, stellen Sie sicher, dass URLs innerhalb Ihrer .plist, die auf Bilder verweisen, mit ".jpg" oder ".png" enden. Wenn dies ein dynamisch generiertes Bild ist, können Sie eine spezielle Route erstellen, die mit einer dieser Erweiterungen endet.