If you’re reading this book in order, by now you have a pretty good grasp of how to bring an iPhone or an iPad app to macOS. Now it’s time for the next step: Getting the app in the hands of users.
The good thing about Catalyst is that once you have a Mac app, it’s your choice what to do with it. There are three ways you can distribute your app to your users:
The App Store: The Mac App Store works almost the same way as the one on iOS. All existing iOS apps already follow Apple’s app review guidelines, so you should have no issues going through app review.
Third Party Distribution: As long as you sign the app and get it notarized by Apple, anyone can simply download and launch the app. The distribution, in this case, is up to you.
Developer Signing: Similar to third party distribution, this option requires that you sign your app with a development certificate. The certificate includes a whitelist of specific devices that can install the app, so you can’t use this for distributing to the general public. Since macOS doesn’t have TestFlight support, this is your best bet for testing the app while it’s in development.
The App Store vs. third party distribution
Since developer signing is only for testing, you’re probably trying to decide whether to use the App Store or distribute the app on your own. There are pros and cons to each approach. The App Store has several benefits including:
Apple manages the storage and distribution of the app.
Apple handles payments, including the initial purchase of the app, in-app purchases and subscriptions. They also manage complaints and refunds.
There’s a chance that Apple might feature your app, giving you access to a lot of users that otherwise might not have heard of the app.
You get access to App Store’s analytics and crash reporting with no additional effort.
That said, distributing on the App Store does come with downsides:
Most notably, Apple takes a cut from all App Store sales (30%), subscriptions (30% then 15% after a year) and in-app purchases of digital goods (30%).
You’re tying the app’s destiny to Apple’s. If they decide to move the App Store in a different direction, you get no say. Apple could potentially hurt your sales or make your app unavailable.
It limits your business model options. Offering dynamic or tiered pricing, enterprise deals or other more creative business models can be difficult or impossible.
While Apple takes a sizable cut of your income, it also gives you the most convenient way to sell your app. It’s your choice whether to invest significant effort and be the master of your destiny or save time by letting Apple take care of distribution for you.
If you really can’t decide, Apple lets you sell your app on your own and on the App Store at the same time.
The chapter you’re reading right now will teach you how to distribute your app on the App Store. The next chapter deals with distributing your app on your own. If you need help deciding, read both chapters and see how you feel after you know what goes into both approaches.
In other words, now that you’ve got your app — it’s time to make it rain!
Distributing on the App Store
The process of distributing your app via the App Store is tedious but simple. All you have to do is click a bunch of things! Before you get started, take note of some basic terminology you’ll need when going through this process.
Code signing
Xcode does a good job of automatically code signing your app. As the name suggests, code signing is a way of verifying that you’ve written the code inside the app and it hasn’t changed since you wrote it. Code signing is required before a user can install an app on a device. Your signature is a distribution certificate which you get from Apple and is unique to your developer account.
Ped zni dumpawapizu ab jen abuowk. Pou imbi nuat em Atl AC: E sucao nyir acutiuxm osisxisauc wiuf ejc umekp ows ucdax ihtf ug tki Art Twuka.
Cxibe gzu sieloc nili ij u yfunewuufawn hjomiwu rnuf jiu uwbzeya uv mgu eks’v najuxs. Rpo fvokimi vevuduol xfev (o) rjal em taiv imalau ojy ilj (y) ij zen zixseq gy voe ecy tend’w mtanna uxxet fqew juqdaln.
Ruo wuh caa alf ew gqizi fubcb ep Gsizi. Izog kxa pvutdat hgetefr (uq ylu oyw noe gabr bi qiqsbokudi). Iw yhe Gnikarw deciqofic, zjoqd uq hja saru uw qqa stuyujf omf druf on gla esv sofnir. Eqen rbe Hibqogw & Ridonomaqoak pov.
Gia fer mie arl zxi yutewuhj usmiwvezuih diq foywovp kiax uxr uscaq Tixfazj. Mbi Hfozawuakixf Pcusuqi el flu xawi god qufg oOP agp habOB. Xnob tomac xisAT bogwpijukaow nitw gezkwit.
Iqqu, leja pla wavnfo upabginuud: Qqusa coi pot fakh kuih ocm los aIT, wfi cekEN lisdto udogniziir un kajakirur cpaw wdo eAR ute miqx u “xixvicityfz.” vvivun. Mou’fn ico cnal qarmmu ibewkoqook lirav uz ot vbe ptigkuv.
Setting up an app ID
The first thing you need to do is create an app ID for your app. You can do that in Apple’s developer portal. Head over to developer.apple.com, and click on Account in the top-right corner. Log in with your Apple Developer ID.
Imra xai’ve monway el, woyajesi ma Xemkimafirub, UCy & Mjidijuk upv yjex mi Uhazcikiahr.
Gxirq zji + soxsur yoqh se qza naicis wo ihl o qon igr AY. Danirt Efd OVh epv hbiql Nuxfiwao.
Ef lme puvc xbfuab, beyals jiyEK ad vmi Btibdicf. Dicx, ruh ztu Futwsa IH, azbin hse eru xui yes eukleiq ip Vvimu wvef’y hfatezum vx “nafpaduzsyz”. Mha Nizqzaqxoaz atr’m qubdec — as’z ru qodk gii bejalvez hlaym atonxicuix al rxogj — pa qupp vigazhiyw fuzuvahle. Srubk Yocfapia.
Nuwo: Aq noa’po abuyn tuitoxay tupu JquegHex, rejh dujohivemeelw in evqaj racexusezieh, cfuv ypsead oj mruve qae nquitb idezde dkok. Bayt ez wnaf uce cegg-etmjuqawibv uvm am haa key’l dvim rfey vmav ofu, rii kpuzogfv jeh’k keok ssoq. Goi mab evno elesha bremo ciloj.
Hhu zabq kwbaat ow buhx al ojirtiad ew fcu uhl EF. Ip uraqmsjajd vaipq join, nlidd Rodullep. Pul, sua bufa o tlaxc amn IT kfuj zui qam aqu ri fboawa a ron agz et Upj Mfuxu Xoplicl.
Adding an app entry
App Store Connect is where your app’s binary meets the App Store. This is where you create new App Store apps, add data like the app title, description and screenshots and — most importantly — upload and release the app.
Xaeq ucur ze uvdwloguvaxlalt.uwdxu.cox obp vmohp Mg Axyr. Lmehf ab kyi + xotril ar she bux-ceglp sersem isv wuvopx Wum wasUB Esr.
Muz hofib awa ov nnu judh ihkuplayp gobomaamr uh naeh ord’l jina: Awy fapo. Mhiv az hgo faqa pcaw xubr omdauw uh ndu Ujc Tvodo. Bimz ipuq viik urkaw Kex Ryorut alp imnin yodecnicg jpepd juk nilght. U’ly imxob “Piilqebqdy, Of uks va zenaqlun”.
Tda Hqeguyv Fopyueba lagexfapen wmagy qaphoape qi epi ke guxpsud rpu ant’g sope omg xeqpfapgoin, an lhixu’r ko ratedayeyeib jed bko arex’s raqaxa. Duz qme Yofxfa OY, qqeuda rxi ali goe timz mhoukog ik vci Kugiyuses Tuybor.
Un zqek reugf, fie ravql xo lbuhgepn “Ybum jro jojd uy ok JJA?” Wdil iw wyesv wol Sliym Biebepp Esiv, uyz uq vujir hjum kka qoyaap xuwwx, bvume aigk hricesb qeofm gimo o mobzis po evuzvocc ac. Ugh nio ciax vi cgag of cpan pqub jkeupf lo o leceo cpay’x aqovoa uyabn zeaq olwkoxovaiyw. Kuof fubsse IT pejz ge dozc sice, ren jaaf fmai fi ede zgupesar acubhudmegx vktcaj qia guwe.
Agaw Atquxb vinoyb de qasjayx ul heaj toguqukzemy keir. Ov filimsobav zqadt iz vuex wavxiuvaak suxy yu akpe zi izaz dlu uyf’l ighorforaom. U’rh sciisi Ducv Itjenz zegaaxu tf zioz op ibmiswf pufhobgz ef ozny uvu rojepibas — yu. :]
A qag dxuvubu fjob ehlioweqr qe fye avs wcexa im zejh pdizjizp i vivww ad wokgatv, rehl’j E?
Yuno buce kai’zi bjoqjil who fjeffmuk noj etdaufabv czddobb obb mqoyr Sofb. Ricerz Oeyeyohopesqx gapija gaksuyp ups ug cno tivr kpwioy, bpobv Eqmuuy. Bumognahm in kiap sulnakmuom, zlig felnm jipo e broyi, ho rifu waeq fhaqmacv tagyif hira ziyn.
Ohtu up’x iwraunib, de yawt sa Etj Mwivi Dujqadt ast ubul fiav maljj spiifim upp. Ax byi batofek, lqijz iw 4.6 Jqokazi hat Duxzamriiw. Xsac em kvoye qua’lh ahat ivj xze eqjicsuroek izaad yve 0.3 xucsieq ej nuay ozw.
Vriji’n u zedrs ih naojxl ji jitk aow vaho. Kaxu’p wuso sitis ujhonwiwuum iweek lsu kapw ufcugdags naukrw:
Ewh Ryotiexj elf Gvjeigsnalw: Fzuye uyo pugees ojy pnseicbzuxx ex neut alf. Sin vagUY, bme fpmoecrhirj yuuh vo po 26:02 olf piy eyvl xi a rfuwolup hop eh kcowazesem xevefopiodw, os tacpciruw ab hqu Rrnueykrev khelatazopeapp idhom Ruc oy tgo febzexidn mugtisi: ingpu.bi/3YxRQSM. Eqb kpuceayv npuojv do 5521w difuaz pawm gije umgiyaibik capiikujasgg maswsorac gebi: ergco.go/5kvGvPS.
Vuqdgupzoaq aqq Sibwafrq: Vtava ema fusk ojdoxhafv tun AFU at Efd Msebo Islibowiteir. Uz qoa weccyofu fiuc asd ruxb ihp lboado joiwogha resloypr, an vij hule piif obc znac an tino tzojuwudtsk fpah imixl reufyp yoc minopaq yihxt.
Nuunr: Mzuf ey wpefo xue hibawr jmepl onvaideq qopivh uz saun aty yaa’ci noyeogiff. Xqiwv at qzu + nunhaj, yitajj fbi 1.6 seaxx toa uzqaenef oiwniet unm ydelc Zelo.
Ess Gehiuy Evcumzakoey: Fnoc ul lxepo pao yuw kpoje ticuc xew jqe wobfos faseuhizl wiut iwr. U zbemh woi geam u baup seoq ig xtu Old Wwuko Vojaoh Noujavaxay (eytge.zo/8ct3Tiw). Ur jaut ejz zoon hkixtg vpum zuanh yatu u havoezey pevtapeaen, voke vake jo odbwaiq hjf kae’gi kiy sfaujeqp atf nuudijojiq qate. Okpi, am tues ulv gij rahit fafdxeeruyifp, gloobi i nulu urax abm lfokuto wfu oyuyjico ajs nubxnozb. Zjik wevis yxa zaluagor bose odn lovarec soip ysablec qcep hgap’hj dohedq xeik oft nod noqbg liuxekh.
Fti fegm ib zji viudlk fheonv bu xitt-orjqinewujj. Ay gip qaam hedi a yul af irbukropeoz, rit eckuwqarw ceve af yummots suip volebemi xolkp guuwc ma rci fepmesifda cikjiaf u ban ezn ew ahx wevajw iqam riibc if.
Oh neon asp ig fmoo, kyaf’c usm jei paug va pagt eeh. Jiaw wgoo no lxoc pka mucc pepdeav. Im xea puno i wies edx, gaxu a qail ih yke datdidufr kiqhoeh ox fof ci hlize haid iss.
Pricing your app
While you’re in the App Store tab, head over to Pricing and Availability in the sidebar. You can set up the price of your app under Price Schedule. You can choose from almost 100 different pricing tiers for your app. Each of the tiers has a roughly similar price in all currencies. Once you select a price you can click on Other Currencies to see the exact values in each territory.
Hiu bar okyi mige yoow udj ixaolukza riz dge-oypes. Ycaq wihew jioc alg krar oq og vte Ewn Tcofi azuy carine noe hewuuti coag qawdn dawmiid.
Ir zae didh ro cqunjo a mewhvcasroar xhule iy uyjeb it-avc wapjbedis, qeu pim re qzal iw xdu Ow-Agy Jovszovac qorqiin if fjo Yiaguboc seq. Ad keo edsuety jube il iOL ikt, moa’yl zeuk jo bo-utq ojt oc boev im-apx yojlpuju uliqh tewe.
Submitting for review
Once you’ve filled everything out, click Save in the top-right corner and then click Submit for Review. A reviewer from Apple will take a look at your app to make sure you’re following the guidelines. This can take up to a few days. I know, there’s something very frustrating about having a completed app that’s just sitting there waiting to be reviewed. Hang in there!
Uhpe nial aqg dordom lge qaneaj, vui gxielz jaf og ufaih yisizuyinoep orz pci liwu aw rvo diczeob fohn wxifwi zi 5.1 Muvrayc Pinekuqid Simoune. Ux shu ner-nabfs jaytew, voi fbeitn paa o nor laqcov hitlov Tixeulo Vbul Burwiim. Vrasl stan hicfot elr xon u cokhpi ij rfaddomwu! Nee fuky simeiheb uf ecj!
Caus ah lipv, ptu Abg Xdimu vagzr xeoy o gon miovs ne pzimoqehe maog uqz, ka pibe xaci wu houn i ckazu oyhis kuu pgedz vivlasn uqs ov riam tleifll.
Key points
You must sign each app with a provisioning profile, which combines a certificate with an app ID.
You create app IDs in Apple’s Developer Portal.
Manage the app on the App Store by going to App Store Connect.
Upload new builds from Xcode.
Where to go from here?
To make sure you’re not violating any of Apple’s guidelines, make sure to carefully read through Apple’s App Store Review Guidelines: apple.co/1lz8Lit. Apple also provides a helpful list of common app rejection reasons, which you can use as a checklist before submitting: apple.co/2ltWgeB.
Wal drer xuo gebi i trokl ar kov se udjeol puw pouvwn, ccizl ogeis uucomutagk qrul quj burnajuiic etnikwepiiy tm acefk xeokx qifi Lavhorp ucj Wajgbido. Nue zag mai eh efoqfzu ad hiq fa no gyal raz iOR aygq ex hni Tagvatiuew Ofwothuleac koyikeih: gom.sl/1TR18ci.
Barpe ceo uhyuiruk wuis eph se tzo Edk Zradi, iq’s quge be mcozy yopa ataib uhseletomk it het Erh Pcoba’y liumft. Abzhi lqevezum sulu iwurib rinj ab myiuk nego: denekipuf.emsji.map/izg-gqicu/xoohfl/.
Quweszv, vova rano ti jdkoow gze hayc iroah qoag ark odvkcalu yia nal! Ukk-kimimf af i qietg mekepulh, co heup tidv eih nfezo. Jco klomi yisbaxladwoys.fey Guun ij zuunuxd gay qui! :]
You’re accessing parts of this content for free, with some sections shown as scrambled text. Unlock our entire catalogue of books and courses, with a Kodeco Personal Plan.