Dezvoltatori certificați Adobe Commerce · Echipe nearshore disponibile în 2 săptămâni

Swift, SwiftUI, App Store Connect

iOS, trimis o dată și aprobat.

Pe iOS partea grea rareori este codul. Este App Review: un om care îți citește aplicația față de o sută cincizeci de pagini de ghiduri, iar fiecare respingere costă zile. Construim după acele ghiduri din primul sprint, pregătim corect declarațiile de confidențialitate și trimitem cu contul demo, notele și dovezile de care are nevoie un recenzent ca să spună da.

Tehnologii

SwiftSwiftUI · UIKitSwift ConcurrencySwiftData · Core DataCombinePush APNsStoreKit 2Sign in with AppleKeychain · App GroupsXcode · TestFlight

01Capabilități

01

Construit după ghiduri, nu corectat după

Funcționalitatea minimă, ștergerea contului, rutarea achizițiilor, textele permisiunilor și Sign in with Apple sunt decizii de proiectare luate în prima săptămână. Descoperirea lor la trimitere transformă data de lansare într-o țintă mobilă.

02

Confidențialitate declarată corect

Etichetele de confidențialitate și declarațiile de API cu motiv obligatoriu, completate după un audit al a ceea ce transmit efectiv aplicația și bibliotecile ei. Apple le verifică față de binar, iar un răspuns greșit înseamnă respingere cu contestație lentă.

03

TestFlight ca etapă reală

Build-uri interne în câteva minute, testeri externi după o verificare ușoară. Factorii de decizie văd aplicația reală pe telefoanele lor cu mult înainte să ajungă în magazin.

04

SwiftUI acolo unde merită

SwiftUI pentru cea mai mare parte a interfeței, UIKit acolo unde încă face treaba mai bine. Amestecul deliberat este mai rapid decât puritatea în oricare direcție.

02Perimetru

Ce este inclus

  • Aplicații iOS native în Swift și SwiftUI
  • Suport pentru iPad, Split View și Dynamic Type
  • Stocare offline cu SwiftData sau Core Data și sincronizare conștientă de conflicte
  • Notificări push prin APNs, inclusiv push bogat și silențios
  • Abonamente StoreKit 2, restaurare și validare de bonuri
  • Sign in with Apple, Face ID și sesiuni păstrate în Keychain
  • App Clips, widget-uri, Live Activities și Shortcuts, unde se potrivesc
  • Configurare App Store Connect, TestFlight și lansare etapizată
  • Etichete de confidențialitate și App Tracking Transparency
  • Pregătirea pentru App Review, trimitere și tratarea respingerilor
  • Actualizări anuale de SDK și compatibilitate cu versiuni noi de OS

03Trimitere

Cum ajunge un build în App Store

Verificarea o face un om, iar scopul este să nu îi dai acelui om niciun motiv de ezitare.

01aceeași zi

TestFlight intern

Până la o sută de oameni din echipă, disponibil la câteva minute după încărcare. Aici se validează un build înainte să-l instaleze cineva din afara firmei.

021–2 zile

TestFlight extern

Până la zece mii de testeri, după o verificare ușoară Beta App Review. Aici ies la iveală telefoanele reale, condițiile reale de rețea și conturile Apple reale, pe care simulatorul le ascunde.

031–3 zile

App Review

Trimis cu un cont demo funcțional, note pentru recenzent care explică orice nu este evident și înregistrări de ecran pentru funcțiile hardware pe care un recenzent nu le poate testa. Majoritatea verificărilor se termină într-o zi; o primă trimitere poate dura mai mult.

047 zile

Lansare etapizată

Lansat către un procent crescător de utilizatori pe parcursul a șapte zile, cu posibilitatea de pauză oricând. Aceeași plasă de siguranță pe care ți-o dă Android, și merită activată de fiecare dată.

04App Review

Respingerile pentru care proiectăm din start

Funcționalitate minimă (ghidul 4.2)

O aplicație care este doar un ambalaj peste un site, sau care oferă puțin peste ce ar putea face un browser mobil, este respinsă. Dacă valoarea ta principală este conținut web, aplicația trebuie să-și merite locul cu ceva nativ — acces offline, push, folosirea hardware-ului sau un model de interacțiune chiar diferit. Ridicăm subiectul înainte de prima linie de cod, pentru că decide dacă proiectul are sens ca aplicație.

Achiziții în afara App Store (3.1.1)

Bunurile digitale și abonamentele consumate în aplicație trebuie să treacă prin achiziție în aplicație, iar aplicația nu are voie să trimită utilizatorii spre o cale de plată exterioară. Bunurile fizice și serviciile consumate în afara aplicației nu au voie să treacă prin ea. Greșirea acestei granițe este cea mai scumpă eroare dintr-o lansare pe iOS, deci o mapăm pe modelul tău de business de la început.

Ștergerea contului (5.1.1(v))

Orice aplicație care permite crearea unui cont trebuie să permită și ștergerea lui din interiorul aplicației, nu printr-un e-mail către suport. Este o funcție mică ce oprește o trimitere pe loc atunci când lipsește.

Confidențialitate și permisiuni (5.1.1)

Fiecare permisiune are nevoie de un text care explică motivul real, aplicația trebuie să funcționeze rezonabil când o permisiune este refuzată, iar etichetele de confidențialitate trebuie să corespundă binarului. Textele vagi sau copiate sunt o respingere de rutină.

Sign in with Apple (4.8)

O aplicație care oferă autentificare prin rețele sociale terțe trebuie în general să ofere și Sign in with Apple ca opțiune echivalentă. Este simplu de adăugat devreme și incomod de adaptat într-un model de conturi deja existent.

05De știut

Ce costă un proiect iOS și nu costă unul Android

Un cont de dezvoltator plătit, reînnoit anual. Un Mac pe care să construiești. Certificate și profiluri de provizionare care expiră și care, la un moment dat, vor expira într-un moment prost — de aceea le automatizăm reînnoirea în loc să tratăm fiecare caz ca pe un incident.

Și latența verificării. Android îți permite să livrezi o remediere în câteva ore; iOS pune un om între tine și utilizatorii tăi. Asta schimbă felul în care planifici o lansare: build-ul de iOS pleacă la verificare mai devreme, feature flag-urile acoperă orice ar putea avea nevoie să fie oprit fără o retrimitere, iar o remediere critică folosește o cerere de verificare accelerată, pe care Apple o acordă cu zgârcenie și o ține minte dacă abuzezi.

Compensația este o gamă de dispozitive îngustă și bine documentată, utilizatori care actualizează repede și o platformă unde o aplicație bine construită rămâne bine construită. Majoritatea clienților noștri livrează pe ambele; disciplina impusă de iOS îmbunătățește de obicei și build-ul de Android.

05Întrebări

Întrebări frecvente

Swift nativ sau React Native pentru iOS?

Cross-platform are sens când aceeași aplicație merge în ambele magazine, iar interfața este în mare parte standard — un singur cod, aproximativ jumătate din cost. Swift nativ merită pentru produse cu interfață bogată, pentru orice se sprijină pe funcționalități noi de platformă sau acolo unde performanța și consumul de baterie fac parte din produs. Construim ambele și îți spunem sincer ce justifică situația ta.

Avem nevoie de Mac și de cont Apple Developer?

Ai nevoie de abonamentul Apple Developer Program pe numele firmei tale — trebuie să fie contul tău, nu al nostru, ca proprietatea asupra listării să nu depindă niciodată de agenție. Mac-ul este problema noastră, nu a ta. Putem administra contul și certificatele pentru tine, într-un aranjament de acces agreat.

Ce se întâmplă dacă aplicația este respinsă?

De obicei este un punct concret și remediabil din nota recenzentului. Răspundem în Resolution Center în aceeași zi — adesea rezolvarea este o clarificare, nu o modificare de cod — și retrimitem. Respingerile fac parte din proces, nu sunt un eșec; important este să coste o zi, nu două săptămâni, iar asta vine din a fi proiectat deja în jurul celor frecvente.

Cât durează publicarea?

După ce build-ul este gata: o zi sau două pentru TestFlight extern, apoi de regulă una–trei zile pentru App Review. Alocă o săptămână pentru prima trimitere, pentru că pagina din magazin, declarațiile de confidențialitate, capturile de ecran și conformitatea la export sunt toate lucrări făcute prima dată.

Puteți prelua o aplicație iOS existentă?

Da. Auditează versiunile de Swift și de dependențe, ținta de deployment, starea certificatelor și a profilurilor, declarațiile de confidențialitate față de cerințele curente și rata fără crash-uri. Aplicațiile care nu au mai fost publicate de un an au de obicei nevoie de actualizări de SDK și API înainte ca orice lucrare de funcționalități să fie realistă.

Ce facem

Dezvoltare aplicații iOS

Aplicații iOS native în Swift și SwiftUI — construite după ghidurile Apple și trimise cu declarațiile de confidențialitate și dovezile care obțin aprobarea din prima.