+420 603 755 610
info@inited.cz
flagEnglish (Angličtina)
flagČeština
Vývoj mobilních aplikací - firma INITED Solutions s.r.o.
  • Domů
  • Pro agentury
  • Pro firmy
  • Ukázky naší práce
  • Blog
  • Náš tým
  • Kontakt
Aktualizace iOS aplikace

Aplikaci odstranili z App Store – Proč? A co teď?

20.1.2021Jaroslav Pavlíček

I když aplikace funguje, Vám to stačí a nikdo si nestěžuje, přesto je třeba ji jednou za čas aktualizovat. Důvodem je tlak Apple a Google na podporu nových zařízení a zvyšování bezpečnostních standardů. Obě firmy totiž průběžně aktualizují „pravidla hry“ a aplikace je musí splňovat. Kontrola se zpravidla provádí při publikaci nové verze a tak na vývojáře tlačí, aby aplikace aktualizovali. V případě, že aplikaci delší dobu (několik let) neaktualizujete, obdržíte upozornění a pokud na něj nezareagujete, aplikace bude z obchodu stažena.

Takto může vypadat zpráva o odstranění aplikace a Apple App Store:

Dear Developer,

On September 1, 2016, we announced that we will be implementing an ongoing process
of evaluating and removing apps that no longer function as intended,
don’t follow current review guidelines, or are outdated.

We noticed that your app has not been updated in a significant amount of time.

Next Steps

To keep your app on the App Store, submit an updated version for review and make
sure it follows the latest App Review Guidelines. If you are unable to submit
an update within 30 days, your app will be removed from the App Store until
you submit an update, and it is approved.

If Your App is Removed

Your app will remain fully functional for current users. They will experience
no interruption to services, will still be able to buy in-app purchases,
and can re-download the app while restoring from an iCloud or iTunes backup.
However, we recommend that you update your app as soon as possible to reinstate
it on the App Store and ensure that it remains functional and engaging
for new and existing customers.

You can continue to use your current app name, as your app has not been deleted
from your account. However, please note that if your app name is longer than
50 characters, you will need to modify it to meet current naming guidelines.

Additional Information

Learn more about changes to the App Store and keeping your apps up-to-date.
App Store Improvements
App Review Resources
Debugging Your Apps

Best regards,
App Store Review

 

Jak takové situaci předcházet

Určitě vydáváním průběžných aktualizací alespoň 1x za rok. Uživatelé mají v obchodě možnost vidět datum poslední aktualizace i celkovou historii. Aplikace, na které je vidět, že bývá aktualizovaná, vzbuzuje také větší důvěryhodnost. Při pravidelných aktualizacích se nové požadavky obchodů, vyšší technologické a bezpečnostní standardy řeší průběžně.

Pokud už se to stane

Pokud už ke stažení aplikace z obchodu došlo, je třeba oprášit zdrojové kódy, udělat kompletní aktualizaci a aplikaci znovu vypublikovat. V těchto případech se může stát, že původní programátor již není k dispozici, nebo nejsou k sehnání zdrojové kódy. Také se může ukázat, že aktualizace by byla tak náročná, že je lepší aplikaci naprogramovat znovu. Bohužel, technologický pokrok je rychlý a nemilosrdný, v oblasti mobilních aplikací o to víc.

Praktický příklad – aktualizace aplikace Čas krmení

V prosinci 2020 jsme aktualizovali technologicky nenáročnou aplikaci, která pomáhá zákazníkům e-shopu opakovat poslední objednávku. Pro zákazníka aplikace přináší lepší uživatelský komfort a časovou úsporu. Pro prodejce zvýšenou loajalitu a udržení stávájících zákazníků, snížení rizika zachvácení konkurencí.

Situace

Aplikace byla vypublikována na konci léta 2014. V té době se horečnatě očekávalo vydání iPhone 6 a Samsung S5 byl na světě 6 měsíců. Pro 3 obrazovky, které aplikace obsahuje, jsme si tenkrát vystačili s jquery a cordovou, tvorba celé aplikaci zabrala pár desítek hodin včetně napojení na e-shop a publikci. Protože dlouhodobě fungovala dobře, nebyla potřeba něco měnit ani aktualizovat. Přesto ji Apple z obchodu odstranil pro neplnění aktuálních podmínek obchodu.

Řešení

Je třeba zmínit, že protože se jednalo pro verzi pro platformu iOS, bylo vhodné provádět aktualizaci na Mac OS. S jiným operačním systémem, např. s Windows, je sice také možné pro iOS vyvíjet, ale na úkor komfortu a času.

Aktualizace obsahovala následující činnosti:

Aktualizovat verzi platformy
Nejprve proběhla aktualizace verzí platformy Cordova. Bylo třeba aktualizovat některé konfigurační soubory, některé doplnit. Také bylo třeba doplnit skripty pro automatickou kompilaci – CI.

Vygenerovat nový provisioning profile
Pro testování na fyzických zařízení bylo třeba vygenerovat nový provisioning profile. Poté se podařilo aplikaci prvně spustit a ověřit její funkčnost. Ukázalo se, že je třeba opravit několik drobností a funkce, které přestaly pracovat úplně.

Nahradit UIWebView novým WKWebVies
Od podzimu roku 2020 musí povinně všechny aplikace používat pro zobrazování HTML obsahu komponentu WKWebView. Použití UIWebView je zakázáno a

Nastavit na serveru hlavičky CORS
Hybridní mobilní aplikace, které interně používají webový prohlížeč, potřebují pro komunikaci se serverem správně nastavené hlavičky CORS. Ty slouží k zabezpečení přístupu k obsahu pouze oprávněným aplikacím. V době, kdy aplikace vznikala, byla tato bezpečnostní politika dobrovolná, dnes je nezbytná. V případě serveru, který používá PHP, stačilo přidat následující řádky:

if (isset($_SERVER["HTTP_ORIGIN"])) {
  header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");
}

header("Access-Control-Allow-Credentials: true");

if (isset($_SERVER["HTTP_ACCESS_CONTROL_REQUEST_HEADERS"])) {
  header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");
}

if (isset($_SERVER["HTTP_ACCESS_CONTROL_REQUEST_METHOD"])) {
  header("Access-Control-Allow-Methods: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']}");
}

Opravit otevírání odkazů v novém okně
Technika, která se v minulosti používala, již z bezpečnostních důvodů dál není možná a na nových verzích iOS nefunguje vůbec. Řešením bylo přidání pluginu cordova-plugin-inappbrowser a drobná úprava kódu.

Opravit status bar
IPhone X přišel nejen s oblými rohy obrazovky, ale také s jinou formou horní části displeje, hovorově nazývané „uši“ nebo správně „notch“. Aby aplikace hezky vypadala, byl přidán plugin cordova-plugin-statusbar a nastavena stejná barva pozadí, jako mělo logo.

Obrázek – notch původní a opravený:

Čas krmení - notch - blbě Čas krmení - notch - správně

 

Opravit tlačítko ukončení aplikace
Po odeslání objednávky již není kam v aplikaci pokračovat, a proto je zde tlačítko na její ukončení. V nové verzi přestalo pracovat a bylo třeba je opravit přidáním pluginu s nativním, kódem, který ukončení provedl.

Doplnit chybějící ikony
Ve světě mobilních aplikací je běžné, že aplikace obsahuje ikony aplikace v různých formátech a rozměrech. Byly tedy doplněny ikony chybějících rozměrů.

Čas krmení - chybějící ikony

Čas krmení – chybějící ikony

 

Doplnit chybějící splash screeny
Situace se splash screeny je podobná té s ikonami. Byly tedy doplněny ikony chybějících rozměrů. Protože se v případě platformy ios jedná o cca 10 bitmap velkých rozměrů a navíc ve formátu PNG,
je do budoucna preferovaný způsob použití story boardu.

Čas krmení - chybějící splashe

Čas krmení – chybějící splashe

 

Nafotit obrazovky aplikaci
Povinnou součástí popisu aplikace v obchodě jsou nafocené obrazovky aplikace. Ty je třeba pořídit v několika předepsaných rozměrech:

  • iPhone Xs Max
  • iPhone 8 Plus
  • iPad Pro (12.9-inch) (4th generation)

Obrazovky se ve většině případů fotí v emulátoru.

Čas krmení - nafocené obrazovky do obchodu

Čas krmení – nafocené obrazovky do obchodu

Aktualizovat zastaralý záznam v obchodě
Zejména:

  • podmínky zpracování osobních údajů
  • vyfocené obrazovky aplikace (staré byly naprosto nepoužitelné)
  • další popisy, které se v té době nepřidávaly
  • možnost přidat další odkazy

Vložit do obchodu zkompilovanou aplikaci
Nejprve je třeba aktualizovat distribuční certifikát a distribuční provisioning profile. Poté provést kompilaci aplikace a vytvořený balíček nahrát do obchodu. Nahrávání se neprovádí způsobem, na který jsme běžně zvyklí – tlačítkem „Upload“, ale Apple pro to používá program Transporter, který lze spustit pouze na Mac OS. Pokud Mac OS není k dispozici nebo při použití CI je možné použít alternativní iTMS řešení.

Schvalovací proces
Schvalovací proces má několik částí: 1. probíhá v programu Transporter ještě před odesláním. 2. probíhá ihned po odeslání, automaticky. 3. probíhá po odeslání vyplněného záznamu v obchodě schvalovacím týmem. Schvalovací proces má za cíl zajistit uživatelům funkční a bezpečnou aplikaci. Po úspěšném schválení je aplikace k dispozici uživatelům.

Na závěr

Někdy by se mohlo zdát, že „oprášit a vložit aplikaci do obchodu“ je činnost na pár kliků myši a 30 minut času. Takové očekávání mají mnohdy klienti i programátoři a výsledkem bývá rozčarování, přestože vše probíhalo bez větších komplikací a obtíží. Není to složitý proces, ale vezme si svůj čas, se kterým je třeba od začátku počítat.

Jaroslav Pavlíček
Jaroslav je certifikovaný architekt (TOGAF) s 25+ lety praxe v IT. Díky tomu mají naše mobilní aplikace vysokou technickou úroveň a jsou postavené na spolehlivých technologiích. Své zkušenosti získával na projektech v zahraničí (Velká Británie, Malta) a vedle INITED působí jako konzultant Adobe Experience Manager, AEM.
Předchozí článek Prát se (práce) musí lidi bavit Další článek Proč firmy mění IT dodavatele?

Kategorie článků

  • Marketing a prodej (23)
  • Mobilní aplikace (37)
  • Mobilní telefony a HW/Ostatní (11)
  • Ostatní (10)
  • Top (5)
  • Trendy (32)
  • Z naší dílny (18)

Přečtěte si také

  • Lidé tráví používáním mobilních aplikací přes 5 hodin denně. Víte, co je zajímá nejvíc?
  • 7 nejlepších způsobů, jak propagovat mobilní aplikaci
  • 5 důvodů, proč váš klient potřebuje mobilní aplikaci: 4. Snadnější vzdělávání
  • Co jsou widgety a proč se vyplatí i vaší aplikaci
  • Tři ze čtyř iPhonů už mají iOS 16. Víte, proč je důležité na to myslet u aplikací?
  • 5 důvodů, proč váš klient potřebuje mobilní aplikaci: 3. Zefektivnění práce
  • Monetizace mobilních aplikací: 5 možností, které se vyplatí využít
  • Pečlivě, pravidelně, systematicky. Jak v INITED testujeme mobilní aplikace
  • 5 důvodů, proč váš klient potřebuje mobilní aplikaci: 2. Zlepšení brand awareness
  • Microsoft chystá vlastní superaplikaci. Bude v ní Bing i Outlook
  • První kandidát na mobil roku? Samsung Galaxy S23
  • 5 důvodů, proč váš klient potřebuje mobilní aplikaci: 1. Zvýšení zisku
  • Vývoj mobilních aplikací v roce 2023: TOP 8 trendů, které nesmíte minout
  • 7 tipů, jak vylepšit mobilní aplikaci
  • 5 největších novinek a trendů mezi mobilními aplikacemi v roce 2022
  • PWA: Efektivní způsob, jak změníte svůj web v aplikaci
  • Vaše „aplikace neodpovídá“? Hrozí vám propad v Google Play a App Store
  • Mobilní aplikace pro konference: 7 věcí, bez kterých se neobejde
  • Mobilní aplikace pro skládací telefony: Myslete na různé režimy i ovládání
  • App Store zdražuje aplikace. Pocítí to i vývojáři

Ahoj 123

blablabl

  • Domů
  • Pro agentury
  • Pro firmy
  • Ukázky naší práce
  • Blog
  • Náš tým
  • Kontakt
© 2023 Created by Provocado
Užíváme cookies, abychom vám zajistili co možná nejsnadnější použití našich webových stránek. Pokud budete nadále prohlížet naše stránky předpokládáme, že s použitím cookies souhlasíte.OkPrivacy policy