iOS-App-Entwicklung: Die 6 wichtigsten Fragen beantwortet

Jun 17, 2022 3 Minuten lesen 2355
Tanya An-Si-Tek Technical Writer
iOS-App-Entwicklung: Die 6 wichtigsten Fragen beantwortet

Als Teil des mobilen Ökosystems verfügt das iOS-Mobilsystem über eine Reihe von Funktionen, sowohl aus technischer Sicht als auch im Hinblick auf die Organisation des Bereitstellungsprozesses.

Wenn Sie sich in der Planungsphase einer iOS-Anwendung befinden, stehen Sie vor einer Reihe von Fragen im Zusammenhang mit den Nuancen der Technologieauswahl, der Erstellung der erforderlichen Berechtigungen und der Veröffentlichung der Anwendung im Apple Store. Allgemeine Informationen, die im Internet verfügbar sind, beantworten nicht immer alle Fragen im Zusammenhang mit der nativen iOS-Entwicklung.

Wir haben die am häufigsten gestellten Fragen von Kunden, Projektmanagern und Geschäftsanalysten gesammelt, die sich auf den Prozess der Erstellung von iOS-Anwendungen beziehen. Die Antworten stammen von Anton Tsykanov - iOS-Entwickler mit 8 Jahren Erfahrung in der Entwicklung mobiler Anwendungen.

SDH erstellt native und plattformübergreifende mobile Anwendungen für iOS von Grund auf und erweitert bestehende Produkte durch Software-Integrationen, benutzerdefinierte Module und Benutzerfunktionen, um die Funktionalität, Ästhetik und das allgemeine Benutzererlebnis zu verbessern.

 

Anstelle von Einleitung

In der IT-Sprache wird die Veröffentlichung eines Programms als Release bezeichnet. Um den Text für Sie auch ohne Google lesbar zu machen, haben wir ein thematisches Glossar zusammengestellt, das Sie sich vor dem Lesen des Artikels ansehen können:

  • Build oder Sammlung ist eine Programmdatei im (.IPA) Format, die der Entwickler in den App Store Connect lädt.
  • Programmsignatur ist eine Technologie, die bestätigt, dass das Programm von einem bestimmten Entwickler erstellt wurde.
  • Zertifikat ist eine Datei mit der "Erlaubnis" für etwas von Apple; sie bescheinigt, dass die Person an dem Computer, auf dem das Zertifikat installiert ist, Mitglied des Apple Developer Program ist und die Berechtigung hat, Sammlungen mit diesem Zertifikat zu signieren.
  • TestFlight ist ein App Store Connect Dienst, in dem Anwendungen getestet werden.
  • Review ist eine App-Prüfung, die von App Store Reviewern durchgeführt wird.
  • Ablehnen ist die Rückgabe des Builds zur Überarbeitung oder die Ablehnung der Zusammenstellung.
  • Fitchen ist das Überführen einer App in ein Seiten-Build.

 

1. Welche Sprache ist derzeit besser für die iOS-App und warum?

Wenn Sie versuchen, die perfekte App für iOS zu entwickeln, ist eines der ersten Dinge, die Sie bestimmen müssen, die Sprache, die Sie für das Projekt benötigen. Wenn es um die Entwicklung nativer mobiler iOS-Apps geht, haben Sie zwei Möglichkeiten: entweder das gute alte Objective-C zu verwenden oder die nächste Generation Swift einzusetzen.

Kurzbeschreibung von Objective-C: "Nur die alten Hasen ziehen in den Krieg"

  • Geschaffen von Brad Cox im Jahr 1983
  • Basiert auf C / C ++ und Smalltalk Technologien
  • Strenge Typisierung
  • Mehr zugewiesener Speicher
  • Strenges ARC
  • Eckige Klammern

 

Kurzbeschreibung von Swift: "Junge Leute sind bereit, Macht zu bekommen"

  • Geschaffen von Chris Lattner im Jahr 2014
  • Basiert auf Objective-C, Rust, Haskell, Ruby, Python, C #
  • Aktualisiert fast jedes Jahr
  • "Soft"-Typisierung & ARC

Objective-C vs Swift zur iOS-App-Entwicklung

SWIFT hat bewiesen, dass es schneller, einfacher und intelligenter ist als Objective-C. Die Zahl der in SWIFT geschriebenen Anwendungen nimmt zu.

Trotz dieses Trends gibt es bereits viele Programme, die in Objective-C geschrieben wurden und Unterstützung benötigen. In einigen Fällen ist Objective-C besser geeignet, vor allem für die Erstellung von Anwendungen mit hoher Last. Der Übergang von einer Sprache zur anderen ist natürlich, aber dieser Übergang ist immer fließend.

Natürlich wird Apple in Zukunft Objective-C aufgeben. Bislang wurde viel Aufwand in seine Förderung und Entwicklung gesteckt. Beachten Sie, dass SWIFT eine Open-Source-Sprache ist, die immer zum Wachstum der Gemeinschaft beiträgt. Im Jahr 2021 zählte die SWIFT-Gemeinschaft bereits 2,5 Millionen Entwickler, während Objective-C nur 1,6 Millionen hatte.

Es ist immer noch nicht wirtschaftlich, das Programm von Objective-C auf SWIFT umzuschreiben, aber neue Projekte sollten in SWIFT durchgeführt werden. Zum Beispiel implementiert Apple selbst neue iOS-Funktionen

 

2. Welches Architekturdesign ist für iOS geeignet?

Die Arten von Architekturen, die zur Erstellung von mobilen iOS-Anwendungen verwendet werden, können variieren, aber sie können alle durch die vier grundlegenden Anwendungsstrukturen oder deren Mischungen abgedeckt werden, die in der IT-Branche weit verbreitet sind. Diese sind MVC, MVP, MVVM und Viper. Aber welche ist die richtige für Ihre Bedürfnisse?

IOS-Anwendungsarchitekturen:

  • MVC (Model, View, Controller)
  • MVP (Model, View, Presenter)
  • MVVM (Model, View, View Model)
  • VIPER (View, Interactor, Presenter, Entity, Router)

IOS-Anwendungsarchitekturen: MVC, MVP, MVVM

Jede Architektur hat ihre eigene Relevanz und ihren eigenen Anwendungsbereich. Zum Beispiel haben die MVC-, MVP- und MVVM-Entwurfsmodelle enge Verbindungen, was den Software-Update- und Testprozess erschwert.

IOS-Anwendungsarchitekturen: VIPER

VIPER bietet im Vergleich zu anderen Modellen ein hohes Maß an Flexibilität und Testmöglichkeiten. VIPER ermöglicht die Verteilung von Vorlagen und hilft beim Testen aller verfügbaren Funktionen, was es zu einer idealen Wahl für die iOS-Entwicklung macht.

 

3. Welche Schwierigkeiten gibt es bei der Apple-Registrierung, der Ausstellung von Genehmigungen und Zertifikaten?

Der Prozess der Vorbereitung eines Kontos für die Veröffentlichung der Anwendung in Apple hat eine Reihe von Fallstricken. Was sollte der Projektleiter vor der Veröffentlichung der Anwendung tun:

  1. Ein Konto im App Store für den Kunden einrichten, wenn der Kunde kein Konto hat, oder das Programm über das Konto des Entwicklers veröffentlichen;
  2. Marketing-Materialien vorbereiten (ein Icon, Screenshots, einen Text, ein Video zum Ansehen des Programms);
  3. Ein digitales Signaturzertifikat zum Build hinzufügen;
  4. Einrichten einer Gebühr für die Nutzung des Programms;
  5. Senden Sie den Build an den App Store.

 

Apple hat ein komplexes Verfahren für die Registrierung, den Erhalt von Genehmigungen und Zertifikaten.

Die Schrittfolge für den Entwickler sieht wie folgt aus:

Zugang zu AppleDeveloper -> Team / Personal Provisioning Profile -> AppleID -> Development Certificate -> Device

Um im AppStore zu veröffentlichen, müssen Sie zunächst ein Entwicklerkonto erstellen. In diesem Konto geben Sie Ihren Firmennamen ein und präsentieren Ihre Marke auf der App Store Plattform. Hier wird Ihr Programm veröffentlicht.

Ein Apple Developer Account kann sowohl für eine juristische Person als auch für einen Einzelunternehmer erstellt werden (die Wartezeit beträgt 1 Tag für einen Entwickler / 19 Tage für ein Unternehmen). Ein Konto, das für eine juristische Person (Unternehmen) erstellt wird, hat keine Beschränkungen hinsichtlich der Anzahl der Entwickler, die darauf Zugriff haben. Ein Konto, das für einen Einzelunternehmer erstellt wird, gibt nur einem Entwickler Zugang. Der Wert eines Apple-Entwicklerkontos beträgt $ 99 / Jahr (ab Juni 2022).

Der App Store benötigt eine digitale Signatur, um den Entwickler zu identifizieren. Nur dieser Entwickler kann in Zukunft das Programm aktualisieren und verändern.

Dieser Abschnitt der Anleitung bezieht sich auf die technische Seite der Entwicklung und wird vom Entwickler durchgeführt. Die Aufgabe des Projektleiters ist es, dafür zu sorgen, dass das Programm eine Signatur hat. Wenn der Build nicht die richtige Signatur hat, kann es zu einer Ablehnung durch den App Store kommen.

Wenn Sie ein Programm entwickeln, werden Sie es wahrscheinlich testen wollen, bevor Sie es zur Genehmigung an Apple schicken. Das Provisioning Profile fungiert als Bindeglied zwischen dem Gerät und dem Entwicklerkonto. Während des Entwicklungsprozesses wählen Sie aus, auf welchen Geräten Sie Ihre Anwendung ausführen können und auf welche Anwendungsdienste sie zugreifen wird. Das Provisioning Profile wird von Ihrem Entwicklerkonto heruntergeladen und in das Anwendungspaket eingebettet, wobei das gesamte Paket mit einem Code signiert wird. Das Provisioning Profile muss auf jedem Gerät installiert werden, auf dem Sie den Programmcode ausführen möchten.

 

Sie müssen außerdem ein Apple Developer Zertifikat erstellen. Sie können es mit Xcode oder dem Apple Developer Portal erstellen. Wenn die Informationen im Provisioning Profile bestimmte Kriterien nicht erfüllen, wird Ihre Anwendung nicht gestartet.

 

Team / Personal Provisioning Profile

Für einen erfolgreichen Start müssen die folgenden Bedingungen erfüllt sein:

  • AppID verifiziert
  • das Zertifikat verifiziert
  • das Team stimmt überein
  • Die Chancen stimmen mit den Rechten überein.

Jede der Phasen, die Sie durchlaufen (Entwicklung, Test oder Veröffentlichung), einschließlich aller wichtigen Komponenten des Apple-Ökosystems wie Push-Benachrichtigungen, erfordert das Vorhandensein aktueller Zertifizierungen. Mit anderen Worten: Ohne die Genehmigung des Apple Developer Centers kann Ihr Programm nicht einmal "niesen".

Zusätzliche Zertifikate:

  • Apple Push Service
  • WatchKit Service Zertifikat
  • ApplePay Payment
  • ApplePay-Händler
  • PassType ID-Zertifikat
  • Website-Push-ID-Zertifikat, etc.

Ein häufiges Problem von Anwendungen ist zum Beispiel, dass Push-Benachrichtigungen nicht funktionieren. In diesem Fall muss der Entwickler die gesamte Kette durchlaufen: Überprüfung der Zertifikate, der Server, des Zugangs zu den Servern (Sandbox und Produktion) usw. In der Regel liegt das Problem nur bei den Zertifikaten.

Die Besonderheiten der Funktionsweise des Apple Software-Zertifizierungssystems sind ein eigenes, umfangreiches Thema. Ein erfahrener iOS-Entwickler von SDH hilft, das Apple Developer Center in Ordnung zu bringen.

 

4. Was sind die wichtigsten Regeln für die Veröffentlichung einer Anwendung?

Die Veröffentlichung einer App im App Store ist der aufregendste Prozess im Leben eines Entwicklers. Dies ist der wichtigste Schritt für ein mobiles Produkt. Alle Erwartungen und die Aufregung über die Veröffentlichung der ersten Version konzentrieren sich hier. Um Neuentwicklungen und Frustrationen in der Vorprojektphase zu vermeiden, sollten Sie sich mit den wichtigsten Regeln des Apple Store vertraut machen. Achten Sie besonders auf den Punkt №4, der sich mit dem Design beschäftigt. Bei der Veröffentlichung des Programms müssen Sie alle Anforderungen der App Store Review Guidelines berücksichtigen, denn es gibt viele davon, und sie sind sehr unterschiedlich.

Neben der Überprüfung der Einhaltung all dieser Regeln folgen nach der Veröffentlichung die Überprüfung durch Apple und manuelle Tests.

Beta-Tests sind der Prozess, bei dem eine Vorabversion oder Beta-Version an eine kleine, begrenzte Anzahl von Testern verteilt wird. ReadyFlight ist eine fertige Lösung, mit der Entwickler das Testen von Beta-Versionen von Programmen für iOS und macOS organisieren können.

iOS App Development for Healthcare

Die Regeln für die Veröffentlichung eines Builds sind ziemlich streng.

Stellen Sie sicher, dass Sie:

  • Testen Sie Ihre Anwendung auf Ausfälle und Fehler;
  • Stellen Sie sicher, dass alle Informationen über das Programm und die Metadaten vollständig und korrekt sind;
  • Aktualisieren Sie Ihre Kontaktinformationen für den Fall, dass App Review Sie kontaktieren muss;
  • Stellen Sie ein aktives Demokonto und Anmeldeinformationen sowie alle anderen Geräte oder Ressourcen bereit, die Sie zum Testen Ihres Programms benötigen;
  • aktivieren Sie die Backend-Dienste, damit sie während der Prüfung aktiv und zugänglich sind;
  • Detaillierte Erklärungen zu nicht offensichtlichen Funktionen und In-App-Käufen usw. einfügen.

 

Nach unserer Erfahrung kann der Antrag auch wegen Kleinigkeiten abgelehnt werden. So wurden wir beispielsweise abgelehnt, weil im Produktcode ein Testkonto mit dem Namen "test" hinterlegt war, in einem anderen Fall gab es eine leichte Diskrepanz zwischen der Schnittstelle und dem geladenen Design-Layout.

 

5. Was sind die häufigsten Gründe für das Scheitern der Veröffentlichung von iOS-Anwendungen?

Nachfolgend finden Sie eine Liste der häufigsten Gründe, warum Ihnen eine App im AppStore verweigert werden kann:

  1. WebView. Die Anwendung darf nicht mehr als 30 % auf der Webansicht und streng kodierte interne Links haben.
  2. Policy Privacy + Terms. Seien Sie vorsichtig bei der Erstellung dieser Dokumente. Sie legen fest, welche Daten das Programm sammelt, wie es sie sammelt und wie es sie verwendet, ob sie an Dritte weitergegeben werden. Neben technischen Fachleuten sollten auch Juristen an der Erstellung der Datenschutzrichtlinie und der Nutzungsbedingungen des Dienstes beteiligt sein.
  3. Icons und Bilder.
  4. Größe. Achten Sie darauf, dass die Größe der .ipa-Datei zum Zeitpunkt der Veröffentlichung 50 MB nicht überschreitet.
  5. UI / UX, das nicht der Human Interface Guideline entspricht. Eine schwer zu bedienende Anwendung, die ein unlogisches Verhalten und eine unlogische Anordnung von Elementen aufweist, wird wahrscheinlich abgelehnt.
  6. Ähnliche Anwendungen. Wenn Sie mehrere Anwendungen einreichen, die im Wesentlichen gleich sind, verzögert sich der Überprüfungsprozess im App Store und das Risiko, dass Ihre Anwendungen die Überprüfung nicht bestehen, steigt.
  7. x32 | 64. Dieser Fehler kann nur bei der Entwicklung einer Anwendung für ältere iOS-Versionen auftreten, bei denen der Entwickler keine Optimierung für die neuesten Prozessorarchitekturen des Telefons vorgenommen hat.
  8. Audio- und Videocodierer
  9. Bluetooth.

iOS App Development

 

6. Welche Arten von mobilen Anwendungen entwickeln wir?

Native Anwendungen für iOS

Unsere Entwickler erstellen erstklassige native Anwendungen für iOS, die es Ihnen ermöglichen, ein komplettes Spektrum an iOS-Entwicklungsdienstleistungen anzubieten, von der Entwicklung der Produktstrategie über das Prototyping bis hin zur Bereitstellung und Wartung im App Store.

Anwendungen für Unternehmen

Unternehmensprogramme für KMUs/Unternehmen können in die IT-Infrastruktur eines Unternehmens integriert werden, um die Produktivität, Flexibilität und Organisation des Teams zu erhöhen. Die Hauptforderung der Kunden von mobilen Unternehmensanwendungen ist die Automatisierung. Die Notwendigkeit, ein solches Produkt zu erstellen, kann durch Veränderungen in der Unternehmensstruktur, der Geschäftsentwicklungsstrategie, der Unternehmenskultur, dem Vertriebssystem, dem Teammanagement und den Prozessen entstehen.

Konsumentenprogramme

Konsumentenprogramme sind oft logisch aufgebaut, leistungsstark und schön gestaltet, wodurch sie die Kundenbindung erhöhen und hohe Bewertungen im App Store erhalten können.

IoT-Anwendungen

Wir entwickeln erstklassige iOS-Apps, die mit einer Vielzahl von IoT-Geräten mit eingebauten Sensoren kompatibel sind, darunter Apple Watches und intelligente Haushaltsgeräte (HomeKit).

Startups

Wir helfen Ihnen, schnell die Zielgruppe anzusprechen und den ersten Gewinn zu erzielen, sich mit Hilfe moderner Technologien von der Konkurrenz abzuheben und Ihr Produkt potenziellen Investoren zu präsentieren.

 

Categories

Share

Benötigen Sie einen Projektkostenvoranschlag?

Schreiben Sie uns, und wir bieten Ihnen eine qualifizierte Beratung.

x
Partnership That Works for You

Your Trusted Agency for Digital Transformation and Custom Software Innovation.