Anwendungsverteilung für iOS innerhalb des Unternehmens (Enterprise Distribute iOS App inhouse)

(Vorsicht, Verkehr unter dem Schnitt)
Das Vorbereiten und Verteilen einer iOS-Anwendung innerhalb eines Unternehmens ist keine leichte Aufgabe, insbesondere wenn die Anwendung unter Windows mit Visual Studio geschrieben wurde und die meisten Tutorials im Internet MacOS ausschließlich mit Xcode beschreiben. Nach stundenlangem Kampf mit der Idee von Apple gelang es uns jedoch, das zu erreichen, was unmöglich schien: eine Giraffe mit einem Nashorn zu kreuzen , um die Xamarin IOS-Anwendung sofort unter MacOS in das Xcode-Archiv zu integrieren, nachdem wir die erforderlichen Dateien für die Verteilung erhalten hatten, und schließlich einen Link zu erstellen, wo Die Anwendung wird verteilt.

Ja, es ist nicht sehr schwer zu hören. Bei der Entwicklung von Anwendungen für Apple-Geräte wird jedoch alles mehrmals unverständlich und kompliziert. Und nach einem triumphalen, aber schwierigen Sieg wollten wir mit diesem Tutorial unsere Spuren in der Geschichte hinterlassen.


Voraussetzungen:

1. Es muss ein Apple Enterprise-Konto vorhanden sein - 299 US-Dollar pro Jahr.

1 Schritt. Erstellen Sie ein Zertifikat.


1. Auf einem Mac müssen Sie zunächst eine Anforderung zum Erstellen eines Zertifikats erstellen. Öffnen Sie dazu den Schlüsselbundzugriff, z. B. über eine Suche:





2. Wählen Sie in der oberen linken Ecke des Bildschirms den Schlüsselbundzugriff aus, wählen Sie im Popup-Menü "Zertifikatassistent" -> "Zertifikat von einer Zertifizierungsstelle anfordern". Das entsprechende Fenster wird geöffnet:





3. Füllen Sie im angezeigten Fenster die Felder "Benutzer-E-Mail-Adresse" - Ihre E-Mail-Adresse - und "Allgemeiner Name" - den Namen des Schlüssels aus. Wählen Sie außerdem die Option „Auf Festplatte gespeichert“, um die Anforderungsdatei auf dem Computer zu speichern. Und klicken Sie auf die Schaltfläche "Weiter":



4. Als Nächstes wird ein Fenster angezeigt, in dem Sie den Namen der Anforderungsdatei angeben und den Pfad zum Speichern der Datei auswählen müssen. Wir nehmen die notwendigen Änderungen vor und speichern:



5. Nach erfolgreichem Speichern wird das folgende Fenster angezeigt. Klicken Sie auf "Fertig":



6. Nachdem wir sehen können, dass die Anforderungsdatei am Speicherort erstellt wurde (in diesem Beispiel auf dem Desktop). Oder wir können den erstellten Schlüssel in der Schlüsselliste unter "Schlüsselbundzugriff" sehen:





7. Als Nächstes müssen wir ein Zertifikat erstellen. Dies können wir auf der Apple- Website für Entwickler tun , indem wir uns in unserem Konto anmelden:







8. Nach einer erfolgreichen Anmeldung gehen wir zu "Zertifikate, IDs & Profile". Außerdem müssen Sie auf der Seite "Zertifikate" sicherstellen, dass "IOS, tvOS, watchOS" ausgewählt ist:





9. Wählen Sie als Nächstes auf der Seite im Abschnitt "Zertifikate" die Option "Produktion" aus:



10. Klicken Sie auf der Seite auf die Schaltfläche mit dem Bild „+“, um ein Zertifikat zu erstellen. Eine Seite wird angezeigt, auf der Sie den Typ des zu erstellenden Zertifikats auswählen müssen:





11. In diesem Beispiel interessiert uns die Inhouse-Verteilungsmethode. Wählen Sie daher als Zertifikatstyp „Inhouse und Ad-hoc“ aus. Nach dem Klicken auf die Schaltfläche "Weiter":



12. Nachdem Sie mit der nächsten Seite zum Erstellen eines Zertifikats fortgefahren sind, wird beschrieben, wie Sie eine MacOS-Anforderung für ein Zertifikat erstellen. Wir haben diese Anfrage bereits in den vorherigen Absätzen erstellt. Klicken Sie auf die Schaltfläche "Weiter":



13. Im nächsten Schritt müssen Sie die zuvor auf dem Desktop erstellte Anforderungsdatei herunterladen. Klicken Sie nach einem erfolgreichen Download auf "Weiter":





14. Danach wird das Zertifikat generiert und auf der nächsten Seite kann es auf den Computer heruntergeladen werden:



15. Laden Sie das Zertifikat in diesem Beispiel auf den Desktop herunter. Wir können das erstellte Zertifikat auch auf der Site sehen:





Wie wir sehen können, haben wir am Ende erfolgreich ein Zertifikat erhalten. Der nächste Schritt ist das Erstellen einer Anwendungs-ID.

2 Schritt. Apps-ID erstellen.


Im vorherigen Schritt haben wir das Zertifikat erfolgreich erstellt. Jetzt müssen wir die Apps-ID erstellen. Dazu benötigen Sie:

1. Gehen Sie auf der Apple- Website für Entwickler in Ihrem Konto zunächst zu "Zertifikate, IDs und Profile". Außerdem müssen Sie auf der Seite "Zertifikate" sicherstellen, dass "IOS, tvOS, watchOS" ausgewählt ist:





2. Als nächstes müssen Sie auf der Seite im Abschnitt „Kennungen“ die Option „App-IDs“ auswählen:





3. Klicken Sie auf der Seite auf die Schaltfläche mit dem Bild „+“, um die App-ID zu erstellen. Es erscheint eine Seite, auf der Sie die Einstellungen für die erstellte ID auswählen müssen. Die ID-Einstellungen sind für Ihre Anwendung individuell. Die einzige wichtige Klarstellung ist, dass Sie in der Spalte App-ID des Suffix die explizite App-ID auswählen müssen:





4. Nach dem Erstellen der App-ID wird diese auf der Site angezeigt:



In zwei Schritten haben wir erfolgreich ein Zertifikat erhalten und eine App-ID erstellt. Als Nächstes müssen wir Bereitstellungsprofile mit dem erstellten Zertifikat erstellen. Und das führt uns zum nächsten Schritt: „3 Schritt. Bereitstellungsprofile erstellen. “

3 Schritt. Erstellung von Bereitstellungsprofilen.


Im vorherigen Schritt haben wir das Zertifikat erfolgreich erstellt. Jetzt müssen wir damit Bereitstellungsprofile erstellen. Dazu benötigen Sie:

1. Gehen Sie auf der Apple- Website für Entwickler in Ihrem Konto zunächst zu "Zertifikate, IDs und Profile". Außerdem müssen Sie auf der Seite "Zertifikate" sicherstellen, dass "IOS, tvOS, watchOS" ausgewählt ist:





2. Wählen Sie als Nächstes auf der Seite im Abschnitt "Bereitstellungsprofile" die Option "Verteilung" aus:





3. Klicken Sie auf der Seite auf die Schaltfläche mit dem Bild „+“, um die Bereitstellungsprofile zu erstellen. Eine Seite wird angezeigt, auf der Sie den Typ des zu erstellenden Profils auswählen müssen:



4. In diesem Beispiel interessiert uns die Inhouse-Verteilungsmethode. Wählen Sie den Profiltyp „In House“ aus und klicken Sie auf die Schaltfläche „Weiter“:



5. Wählen Sie auf der nächsten Seite die zuvor in Schritt 2 erstellte App-ID aus:



6. Nachdem Sie auf die Schaltfläche „Weiter“ geklickt haben, fahren Sie mit der Auswahl des Zertifikats fort, das wir in Schritt 1 erstellt haben. Klicken Sie anschließend auf die Schaltfläche "Weiter":



7. Auf der nächsten Seite müssen wir das Feld mit dem Profilnamen ausfüllen und die Daten überprüfen, bevor wir das Profil erstellen:



8. Nachdem das Profil erstellt wurde und heruntergeladen werden kann:



9. Laden Sie in diesem Beispiel das Bereitstellungsprofil auf den Desktop herunter. Wir können auch das erstellte Bereitstellungsprofil auf der Site anzeigen und feststellen, dass es aktiv ist:





Nach den Ergebnissen von 3 Schritten haben wir das Bereitstellungsprofil erfolgreich erstellt.

4 Schritt. Erstellen von Xcode-Archiven (.xcarchive) basierend auf Ihrer Anwendung in Visual Studio unter Windows und anschließendes Erstellen von .ipa- und .plist-Dateien


Die vorherigen Schritte wurden auf einem Computer von Apple (Mac) ausgeführt. Anschließend werde ich Ihnen erklären, wie Sie .xcarchive in Visual Studio 2017 für Windows sofort auf einem Mac erstellen.

1. Dazu benötigen wir die Xamarin-Anwendung in Visual Studio, die mit dem Mac verbunden wird:



2. In der Lösung müssen Sie das IOS-Projekt auswählen, indem Sie mit der rechten Maustaste darauf klicken. Wählen Sie im angezeigten Menü "Eigenschaften". Wählen Sie im folgenden Fenster "ios bundle settings". Wählen Sie als Nächstes in der "Bundle-Einstellung" - "Manuelle Bereitstellung" und unten in der Spalte "Manuelle Bereitstellung" Ihr Zertifikat und Profil aus, das wir in den vorherigen Schritten erstellt haben:





3. Wählen Sie im IOS-Projekt die Datei Info.plist aus und stellen Sie sicher, dass die „Bundle-ID“ mit der gewünschten App-ID übereinstimmt:





4. Öffnen Sie anschließend die Entwicklerbefehlszeile in Visual Studio (als Administrator) „Developer Command Prompt for VS 2017“ und wechseln Sie entweder in das Verzeichnis mit dem ios-Projekt oder geben Sie beim Erstellen des Befehls die vollständige Adresse an. Dieser Befehl erstellt aus Visual Studio ein .xcarchive-Archiv auf einem Mac. Das Archiv selbst enthält nicht die .ipa- und .plist-Dateien, die wir verteilen müssen. Nach dem Generieren des Archivs müssen wir sie erstellen. Weitere Informationen zum Erstellen eines Archivs finden Sie hier .

Befehl: msbuild /p:Configuration=Release /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhone /p:ArchiveOnBuild=true /t:"Build" MyProject.csproj





5. Nach der erfolgreichen Ausführung des Befehls auf dem Mac sollte ein Archiv erstellt worden sein. Wir müssen Xcode ausführen, "Windows" darin auswählen und "Organazer" in diesem Menü auswählen. Dort sehen wir im Abschnitt "Archiv" das erstellte .xcarchive-Archiv:







6. Jetzt müssen wir .ipa- und .plist-Dateien basierend auf dem erstellten Archiv erstellen.

Mit ihrer Hilfe können wir unsere Anwendung unter Umgehung des AppStore beispielsweise innerhalb des Unternehmens verteilen. Als nächstes müssen wir auf die Schaltfläche "App verteilen" klicken. Wählen Sie im angezeigten Menü "Unternehmen" und klicken Sie auf die Schaltfläche "Weiter":



7. Als Nächstes müssen Sie die Geräte auswählen, auf die Sie verteilen können, und sicherstellen, dass Sie "Manifest für drahtlose Installation einschließen" auswählen, damit Sie die Anwendung vom Browser herunterladen können:



8. Geben Sie im nächsten Fenster "Name" an - den Namen der Anwendung. "App URL" - Pfad zur .ipa-Datei; "Display Image URL" - Pfad zum Symbol 57x57; "Full Size Image URL" - Pfad zum Symbol 512x512.

Es ist wichtig, dass der Server, auf dem sich die .ipa- und .plist-Dateien befinden, verschlüsselt ist, dh https ist obligatorisch. In diesem Beispiel wird der Dropbox- Dienst verwendet. Bei der Verwendung des Dropbox-Dienstes ist es wichtig zu wissen, dass der richtige Pfad zur Datei über den öffentlichen Link nicht mit "https://www.dropbox.com/" beginnen sollte, wie im generierten Link angegeben, sondern mit "https://dl.dropboxusercontent.com/". ""



9. Im nächsten Schritt müssen wir das erstellte Zertifikat und das Bereitstellungsprofil auswählen:



10. Nachdem wir die erfolgreich zusammengestellte Anwendung gesehen haben, müssen wir auswählen, wo der Ordner mit der Anwendung gespeichert werden soll, die wir anschließend verteilen werden:





11. Nach dem Speichern wurde ein Ordner auf dem Desktop erstellt. Sie können den Inhalt des Ordners in den folgenden Screenshots sehen, wenn 4 .plist-Dateien erstellt werden und normalerweise 1 .ipa. In der Testanwendung ist dies jedoch etwas anders. In diesem Fall interessiert uns jedoch eine Datei, deren Name nur den Namen unserer Anwendung enthält. Für die 4 .plist-Dateien benötigen wir die Datei "manifest.plist". Zum Installieren der Anwendung benötigen Sie eine Liste, in der die Eigenschaften vor der Installation beschrieben werden. Erfahren Sie hier mehr über Enterprise Distribution und sehen Sie, wie manifest.plist aussieht:







Daher haben wir in diesem Schritt erfolgreich die .ipa- und .plist-Dateien der in Visual Studio 2017 erstellten Anwendung erstellt, die wir für die interne Verteilung verwenden werden.

5 Schritt. Anwendungsverteilung


In den vorherigen Schritten haben wir unseren Antrag für den Vertrieb vorbereitet. In diesem Schritt erstellen wir eine einfache HTML-Datei mit dem Link und fügen sie in den lokalen IIS ein. Dies dient zur Vereinfachung des Beispiels, aber der Speicherort des Links spielt keine Rolle. Nicht beispielhafter Link
kann auf Ihrer eigenen Site platziert werden, so dass es Mitarbeitern wie Anwendungsdateien zur Verfügung steht. Es sollte auf Ihrem eigenen Server platziert werden. In diesem Beispiel haben wir jedoch, wie bereits erwähnt, den Dropbox-Dienst verwendet.

1. Zuerst müssen wir die Dateien (Symbole, .ipa-Datei und manifest.plist) in der Dropbox platzieren und sie unter folgendem Link verfügbar machen:



2. Nach dem Erstellen der HTML-Datei den folgenden Inhalt:

 <html> <body> <a href="itms-services://?action=download-manifest&url=https://www.yoursite.ru/dirname/manifest.plist"> Install iOS in-house App</a> </body> </html> 

3. Laden Sie als Nächstes diese HTML-Datei auf den lokalen IIS (oder Ihre Site) hoch. Wenn Sie diesem Link von einem mobilen Gerät aus folgen, werden Sie aufgefordert, die Anwendung zu installieren. Nach der Installation der Anwendung muss der Benutzer das Vertrauen in das Zertifikat auf den Geräteeinstellungen → Allgemein → Geräteverwaltung → „Unternehmensname“ bestätigen. Dann können nur Benutzer die Anwendung öffnen:







Zusammenfassung


Nach den Ergebnissen von 5 Schritten haben wir ein Zertifikat und ein Bereitstellungsprofil erstellt, ein Xcode-Archiv aus Visual Studio 2017 gesammelt, IPA- und .plist-Dateien zur Verteilung empfangen und die Anwendung erfolgreich auf dem Gerät installiert, indem wir auf den Link geklickt haben, wodurch der AppStore umgangen wurde.

Source: https://habr.com/ru/post/de427579/


All Articles