1 00:00:02,410 --> 00:00:05,880 Quando crei per gli app store, l'interfaccia della riga di 2 00:00:05,920 --> 00:00:10,780 comando di expo, quindi ciò che digitiamo qui nella riga di comando può aiutarti 3 00:00:10,780 --> 00:00:17,070 o aiutarti, ma potresti dover modificare la configurazione nell'app. file json a seconda delle funzionalità utilizzate dall'applicazione. 4 00:00:17,110 --> 00:00:24,160 Quindi la nostra applicazione qui utilizza un sacco di moduli nativi, tutti questi moduli devono richiedere le 5 00:00:24,250 --> 00:00:32,020 autorizzazioni e facciamo questo con l'API delle autorizzazioni, come ad esempio nel selettore di immagini qui quando chiediamo le autorizzazioni 6 00:00:32,020 --> 00:00:38,590 ma per Android, ad esempio, anche tu devi fornire un elenco delle autorizzazioni necessarie alla tua 7 00:00:38,590 --> 00:00:46,510 app in un file di configurazione che tu, quando usi solo React Native, ma che non hai quando usi expo 8 00:00:46,510 --> 00:00:53,890 perché expo fornisce questo wrapper e fa tutto questo per te in expo client, ma ora non prevediamo 9 00:00:53,890 --> 00:00:57,030 più di utilizzare il client expo e mentre 10 00:00:57,070 --> 00:01:03,610 includerà questo nella tua app standalone come ho già detto, ora devi dire a expo quali 11 00:01:03,610 --> 00:01:05,630 autorizzazioni dovrebbe richiedere lì. 12 00:01:05,890 --> 00:01:11,860 Inoltre, ad esempio, se stai utilizzando Google Maps, devi anche fornire la tua chiave API di Google Maps e con ciò, non 13 00:01:12,400 --> 00:01:17,350 intendo come lo stiamo facendo qui che utilizziamo in alcune parti del nostro codice Javascript, ma per 14 00:01:17,350 --> 00:01:19,680 usa il pacchetto di mappe native di React. 15 00:01:19,720 --> 00:01:27,160 Anche in questo caso l'app client expo utilizza fondamentalmente la propria chiave per lo sviluppo e così via, ma non appena 16 00:01:27,190 --> 00:01:33,670 si prevede di offrire un'app standalone, è necessario portare le proprie chiavi in modo che il wrapper expo 17 00:01:33,670 --> 00:01:37,480 che verrà incluso nell'app standalone utilizzerà la propria chiave perché 18 00:01:37,510 --> 00:01:41,720 il team di Expo non ti fornirà una chiave di loro proprietà. 19 00:01:42,090 --> 00:01:44,620 Ancora una volta, i documenti ufficiali sono i tuoi amici, lì 20 00:01:44,620 --> 00:01:48,020 puoi imparare cosa puoi configurare nell'app. file json e 21 00:01:48,490 --> 00:01:54,580 iniziamo con Android perché lì, dovrai configurare un po 'di più prima di approfondire 22 00:01:54,670 --> 00:01:57,190 ciò che è specifico su iOS. 23 00:01:57,190 --> 00:02:04,210 Quindi per Android, oltre all'icona e così via, ciò che puoi configurare ci sono le autorizzazioni. Ora il fatto è che puoi semplicemente omettere 24 00:02:04,210 --> 00:02:10,930 la chiave delle autorizzazioni e in quel caso, come vedi qui, expo configurerà effettivamente la 25 00:02:10,930 --> 00:02:14,200 tua app per richiedere tutte le autorizzazioni. 26 00:02:14,200 --> 00:02:19,600 Ora non consiglierei di farlo perché le persone guarderanno la tua app nell'App Store e se vedono 27 00:02:19,600 --> 00:02:26,980 che la tua app di gestione dei luoghi di base desidera autorizzazioni per leggere i loro contatti o effettuare chiamate, beh non so di 28 00:02:26,980 --> 00:02:30,070 te ma non lo farei scaricare una tale app. 29 00:02:30,070 --> 00:02:35,680 Quindi la mia raccomandazione è che tu sia specifico riguardo alle autorizzazioni di cui la tua app 30 00:02:35,680 --> 00:02:41,860 ha bisogno e lo fai andando sulla tua app. file json e lì nel nodo Android, aggiungi la 31 00:02:42,130 --> 00:02:45,030 chiave delle autorizzazioni e ora aggiungi le autorizzazioni. 32 00:02:45,040 --> 00:02:51,130 Ora verranno sempre richieste alcune autorizzazioni di base e qui troverai queste autorizzazioni, ad esempio autorizzazioni per ottenere 33 00:02:51,130 --> 00:02:57,040 dati da Internet e così via, ma ora puoi anche aggiungere autorizzazioni per utilizzare la posizione dell'utente 34 00:02:57,040 --> 00:03:01,100 e accedere alla telecamera perché è qualcosa che faremo fare. 35 00:03:01,100 --> 00:03:06,670 Quindi aggiungiamo queste chiavi qui ad autorizzazioni come questa, a stringhe chiavi con virgolette doppie, questo è importante in 36 00:03:06,670 --> 00:03:07,960 questo file, aggiunto 37 00:03:07,990 --> 00:03:09,480 a questo array di autorizzazioni. 38 00:03:10,520 --> 00:03:20,350 Ora avremo anche bisogno dell'autorizzazione di scrittura su memoria esterna per salvare la nostra immagine, quindi dovremmo aggiungere anche quella e con ciò dovremmo 39 00:03:20,350 --> 00:03:21,520 essere buoni 40 00:03:21,520 --> 00:03:26,410 per questa applicazione, ma ovviamente a seconda dell'applicazione che stai costruendo, controlla 41 00:03:26,410 --> 00:03:29,940 attentamente quali autorizzazioni la tua app sarà necessario, 42 00:03:30,010 --> 00:03:36,190 puoi sempre consultare le pagine di documentazione dei pacchetti del modulo nativo che stai utilizzando, 43 00:03:36,190 --> 00:03:38,570 normalmente dovresti trovare una descrizione 44 00:03:38,620 --> 00:03:43,430 delle autorizzazioni necessarie per questo pacchetto. Quindi le autorizzazioni sono 45 00:03:43,650 --> 00:03:48,840 una cosa, inoltre se stai utilizzando Google Maps, dovresti aggiungere il nodo 46 00:03:48,840 --> 00:03:51,530 Google Maps alla tua configurazione Android. 47 00:03:51,690 --> 00:03:52,170 Quindi 48 00:03:52,170 --> 00:04:00,210 qui dopo le autorizzazioni, possiamo aggiungere mappe di Google come questa che contiene anche un oggetto come valore e in quell'oggetto, 49 00:04:00,270 --> 00:04:02,440 puoi impostare la chiave API. 50 00:04:02,490 --> 00:04:09,480 Ancora una volta non è necessario per il client expo quando pubblichiamo l'app in questa pagina expo e utilizziamo l'app client expo 51 00:04:09,510 --> 00:04:15,190 perché lì il team expo ti fornisce in pratica la propria chiave di Google Maps ma se 52 00:04:15,330 --> 00:04:18,480 stai costruendo un'app standalone, è necessario fornire il proprio. 53 00:04:18,480 --> 00:04:27,000 Pertanto, assicurati di utilizzare la tua chiave qui in questo modo e anche importante e che ho già menzionato 54 00:04:27,360 --> 00:04:29,530 questo nel modulo non 55 00:04:29,580 --> 00:04:40,260 expo, assicurati che nelle API di Google, quindi nella console cloud di Google quando controlli la tua libreria API, tu assicurati che l'SDK delle 56 00:04:40,260 --> 00:04:47,390 mappe per Android sia abilitato per questo progetto a cui appartiene questa chiave API che hai 57 00:04:47,400 --> 00:04:48,080 fornito. 58 00:04:48,090 --> 00:04:49,440 Quindi qui è 59 00:04:49,440 --> 00:04:54,720 abilitato, questo deve appartenere al progetto per il quale hai creato quella chiave API 60 00:04:54,720 --> 00:05:00,770 che ora stai fornendo qui, altrimenti non funzionerà. Quindi queste sono le autorizzazioni e le impostazioni di Google Map 61 00:05:00,770 --> 00:05:02,980 e potresti aver bisogno di altre impostazioni specifiche 62 00:05:02,980 --> 00:05:06,710 che puoi conoscere qui nell'app. file json a seconda delle funzionalità che stai utilizzando. 63 00:05:06,710 --> 00:05:10,220 Puoi anche configurare Naturalmente tutto il resto e 64 00:05:10,220 --> 00:05:18,540 tante altre cose, una cosa che devi assolutamente fornire per costruire la tua app è anche questa chiave del pacchetto. 65 00:05:18,540 --> 00:05:21,940 Questo è qualcosa che devi sempre aggiungere indipendentemente dall'utilizzo della tua 66 00:05:22,050 --> 00:05:27,800 app, qui nel nodo Android, devi fornire la chiave del pacchetto e questo ora deve avere un certo formato. 67 00:05:27,810 --> 00:05:33,870 È fondamentalmente un URL inverso, un URL fittizio che non deve esistere ma che funge da identificatore univoco 68 00:05:33,870 --> 00:05:37,110 in tutto il Google Play Store, quindi dovrebbe essere un 69 00:05:37,110 --> 00:05:42,060 URL inverso che nessun altro ha usato prima e quindi in genere se possiedi un 70 00:05:42,120 --> 00:05:48,210 dominio, useresti il tuo dominio per esempio com. accademind, quindi un dominio inverso e quindi 71 00:05:48,270 --> 00:05:53,700 un identificatore univoco, come posti fantastici. Puoi trovare qualsiasi URL tu voglia qui, ma 72 00:05:53,790 --> 00:05:58,920 ovviamente dovrebbe essere unico e quindi dovresti usare il tuo dominio o un dominio fittizio 73 00:05:58,920 --> 00:06:00,890 che non è di proprietà 74 00:06:00,990 --> 00:06:07,530 di nessuno, quindi non accademico perché possiedo questo, quindi qualsiasi altro dominio, qualsiasi altro identificatore fittizio che dovrebbe avere 75 00:06:07,530 --> 00:06:08,880 questo formato, questo 76 00:06:08,880 --> 00:06:10,790 è ciò che fornisci qui. 77 00:06:10,860 --> 00:06:14,860 Devi anche fornire qualcosa di simile su iOS, lì se vai su 78 00:06:14,970 --> 00:06:21,480 iOS, non è necessario fornire questa impostazione di autorizzazione poiché le autorizzazioni iOS funzionano in modo diverso, è necessario fornire 79 00:06:21,480 --> 00:06:22,580 una chiave API 80 00:06:22,650 --> 00:06:28,020 di Google Maps se si utilizza Google Maps versione del pacchetto mappe per iOS, il valore predefinito 81 00:06:28,020 --> 00:06:33,600 di questo pacchetto è comunque l'utilizzo di Apple Maps e non l'ho modificato nella mia app, quindi 82 00:06:33,600 --> 00:06:37,200 non ho bisogno di fornire l'API di Google Maps qui, 83 00:06:37,440 --> 00:06:45,260 ma quello che devi assolutamente fornire qui è un identificatore di bundle. Quindi sostituisci il pacchetto con l'identificatore del bundle e il formato è 84 00:06:45,260 --> 00:06:47,240 lo stesso, hai questa sintassi 85 00:06:47,240 --> 00:06:54,050 URL inversa qui e la chiamerò com. academind. corso in posti fantastici e usa 86 00:06:54,080 --> 00:06:56,630 anche quell'edizione di corso qui su Android. 87 00:06:56,810 --> 00:07:02,090 Quindi l'identificatore del bundle per iOS e il pacchetto per Android devono essere impostati su un URL univoco così inverso. 88 00:07:02,090 --> 00:07:07,830 Ora oltre a questi identificatori, devi anche impostare qualcos'altro, su iOS devi 89 00:07:07,840 --> 00:07:15,290 aggiungere un numero di build, quindi anche qui nel nodo iOS e il numero di build dovrebbe 90 00:07:15,290 --> 00:07:23,020 essere una stringa che identifica la tua build. Lì, dovresti avere un numero di build proprio come questa versione lassù e lavorare 91 00:07:23,530 --> 00:07:25,800 nel modo in cui l'ho spiegato lassù. 92 00:07:25,810 --> 00:07:33,100 Quindi dovrebbe essere un numero composto da tre cifre in cui hai un numero di patch per patch, correzioni di 93 00:07:33,110 --> 00:07:39,780 bug, quindi questo numero di aggiornamento minore per nuove funzionalità che non interrompono tutto e questo numero di 94 00:07:39,780 --> 00:07:41,820 aggiornamento principale, puoi modificarlo 95 00:07:41,850 --> 00:07:46,260 come vuoi ma dovresti cambiarlo per ogni nuova versione che pubblichi 96 00:07:46,260 --> 00:07:51,910 e distribuisci e ovviamente dovresti cambiarlo in modo tale da riflettere ciò che è cambiato. 97 00:07:51,920 --> 00:07:53,970 Ora hai bisogno di qualcosa di simile 98 00:07:53,970 --> 00:08:01,710 per Android, se torniamo alla documentazione di Android, ci serve anche un codice di versione. Quindi qui aggiungiamo il codice della versione e ora qui questa 99 00:08:01,870 --> 00:08:07,030 non è una stringa ma un numero che dovresti semplicemente incrementare di uno per ogni 100 00:08:07,030 --> 00:08:07,810 nuova versione. 101 00:08:07,810 --> 00:08:09,170 Quindi inizi da una, la 102 00:08:09,190 --> 00:08:14,950 prossima versione che rilasci, anche se contiene solo alcune piccole correzioni dovrebbe essere due e poi tre e 103 00:08:14,950 --> 00:08:15,910 così via. 104 00:08:15,910 --> 00:08:20,890 Quindi è quello che dovresti impostare qui, ecco come funziona per Android, trovi anche quella 105 00:08:20,950 --> 00:08:23,000 descrizione qui nella documentazione e con 106 00:08:23,140 --> 00:08:28,000 ciò, ora siamo pronti a distribuirlo o costruirlo prima e, come ho già detto, 107 00:08:28,000 --> 00:08:32,860 il bello la cosa su expo gestita è che ora puoi costruirla sui server 108 00:08:32,860 --> 00:08:33,960 cloud di expo. 109 00:08:34,150 --> 00:08:41,440 Quindi, ciò che dovresti fare è eseguire Expo Publish per pubblicare l'ultima versione della tua app sui server di Expo proprio 110 00:08:41,500 --> 00:08:46,100 come quella che non la costruirà ancora come app standalone e ora quello che 111 00:08:47,370 --> 00:08:54,190 ottengo qui sono un paio di avvertimenti o errori. Quindi vediamo che Android non dovrebbe avere proprietà aggiuntive Google 112 00:08:54,190 --> 00:08:55,360 Maps, sì perché 113 00:08:59,710 --> 00:09:02,300 dovrebbe essere in un nodo di configurazione, 114 00:09:02,410 --> 00:09:03,490 errore mio. 115 00:09:03,490 --> 00:09:08,890 Quindi dovresti aggiungere config qui e in config, potresti avere questa chiave di Google Maps, 116 00:09:08,890 --> 00:09:15,780 è un piccolo errore dalla mia parte e qui per il pacchetto, Android in realtà non gradisce i trattini lì 117 00:09:15,850 --> 00:09:24,170 dentro ma puoi usare i trattini bassi, quindi usiamo questo . Con quello risolto, ora eseguiamo expo publishing di nuovo per convalidare di 118 00:09:24,170 --> 00:09:27,230 nuovo questo e quindi pubblicare la versione più recente 119 00:09:27,320 --> 00:09:33,890 sui server di expo che di nuovo non avvierà ancora il processo di compilazione ma che è una preparazione 120 00:09:35,170 --> 00:09:40,360 importante e una volta fatto, sei pronto per costruisci anche la tua app per Android e 121 00:09:40,390 --> 00:09:41,120 iOS. 122 00:09:41,170 --> 00:09:45,910 Ora la differenza tra pubblicazione e costruzione è che la pubblicazione invia semplicemente il codice e la configurazione ai server di 123 00:09:45,910 --> 00:09:50,540 expo e quindi è possibile eseguire la scansione del codice a barre con il client expo e così via. 124 00:09:50,560 --> 00:09:56,590 Costruire significa sfruttare il servizio di cloud build di expo per creare davvero un bundle di 125 00:09:56,830 --> 00:09:59,480 app Android o un file IPA iOS, 126 00:09:59,500 --> 00:10:04,090 questi sono i file che successivamente caricherai negli app store, quindi qui 127 00:10:04,090 --> 00:10:06,780 c'è un'enorme differenza. Ora questi bundle che 128 00:10:06,800 --> 00:10:10,220 costruisci come accennato in precedenza includono il client expo, per così 129 00:10:10,220 --> 00:10:15,290 dire, includono questo come un wrapper per la tua app ma è una vera e propria app 130 00:10:15,290 --> 00:10:19,410 nativa quindi, dopo tutto, quindi è un'app nativa con solo questo piccolo wrapper extra 131 00:10:19,490 --> 00:10:24,840 piccolo attorno ad essa tenendo conto della configurazione che hai impostato qui, ad esempio per quanto riguarda le autorizzazioni. 132 00:10:24,870 --> 00:10:31,890 Inoltre, queste app create sui server di Expo che è possibile distribuire tramite gli store di app parleranno con i 133 00:10:31,890 --> 00:10:39,300 server di Expo per la funzionalità di aggiornamento via etere. Quindi continuerai a pubblicare nuovi aggiornamenti con expo successivamente 134 00:10:39,300 --> 00:10:45,750 e le tue app autonome in esecuzione su altri dispositivi riceveranno questi aggiornamenti pubblicati, quindi la 135 00:10:45,750 --> 00:10:48,900 pubblicazione è ancora importante anche se stai 136 00:10:48,900 --> 00:10:53,820 costruendo app autonome, se stai creando bundle di app perché questi bundle di 137 00:10:54,000 --> 00:10:59,160 app continueranno a parlare con i server di expo per ottenere nuove versioni. 138 00:10:59,280 --> 00:11:01,720 Ma parlando di questo, come possiamo costruire questi bundle ora? 139 00:11:01,720 --> 00:11:07,770 Lo fai con il comando expo build e lì hai build: Android e 140 00:11:07,770 --> 00:11:08,780 build: iOS. 141 00:11:08,880 --> 00:11:16,020 Bene, iniziamo con build: Android e come suggerisce il nome, questo crea un'app per Android. 142 00:11:16,020 --> 00:11:21,540 Puoi imparare tutto sul processo di compilazione autonomo nei documenti di expo delle app standalone 143 00:11:21,540 --> 00:11:27,210 che trovi anche allegato qui e là trovi la configurazione di base di cui hai 144 00:11:27,210 --> 00:11:33,710 bisogno e cosa dovresti prendere in considerazione lì. Per Android, qui trovi che anche in questo momento 145 00:11:33,710 --> 00:11:39,200 almeno puoi scegliere se vuoi creare un APK o un file di bundle di app, si 146 00:11:39,260 --> 00:11:40,780 consiglia di creare un 147 00:11:40,850 --> 00:11:47,330 file di bundle di app perché è il formato preferito desiderato da Google e per questo puoi eseguire invece 148 00:11:47,330 --> 00:11:54,710 di expo build Android, esegui expo build Android -t app-bundle aggiuntivo. Se ora premi Invio, questo alla fine convaliderà la tua configurazione 149 00:11:54,710 --> 00:12:00,350 e quindi trasferirà il tuo codice ai server di build cloud di Expo dove questo sarà ora programmato. 150 00:12:00,350 --> 00:12:05,330 Ora, prima di tutto, ti chiederà perché le app devono essere firmate, ciò accade con 151 00:12:05,360 --> 00:12:10,210 una coppia di chiavi pubbliche private che alla fine viene utilizzata per identificarti come 152 00:12:10,220 --> 00:12:13,200 autore dell'app, aggiornamenti futuri dell'app e con ciò che 153 00:12:13,220 --> 00:12:18,250 io don significano gli aggiornamenti che hai pubblicato sui server di expo con il comando 154 00:12:18,410 --> 00:12:23,600 di pubblicazione expo ma quando ricostruisci l'app, quando ricostruisci il pacchetto che poi ricarichi negli app 155 00:12:23,900 --> 00:12:28,940 store che occasionalmente dovrai fare se, ad esempio, cambi l'icona o qualcos'altro che non può 156 00:12:28,940 --> 00:12:30,670 essere condiviso con expo 157 00:12:30,740 --> 00:12:36,890 publishing, in questi casi, è necessario firmare l'aggiornamento con le stesse chiavi utilizzate per creare l'app originale per identificarti 158 00:12:37,130 --> 00:12:39,050 come autore, altrimenti l'App Store 159 00:12:39,050 --> 00:12:45,530 negherà questo aggiornamento, non accetterà la tua prossima versione dell'app. Quindi quindi devi firmare la tua app e se sai 160 00:12:45,530 --> 00:12:50,120 cosa stai facendo, puoi creare e caricare il tuo archivio chiavi ma qui rimarrò alla 161 00:12:50,120 --> 00:12:50,770 versione 162 00:12:50,810 --> 00:12:54,090 uno e lascerò gestire expo ciò che significa che creerà 163 00:12:54,170 --> 00:13:00,300 tale chiave per l'assegnazione e fare tutte le cose per la firma per te sui loro server, quindi è 164 00:13:00,350 --> 00:13:01,520 quello che scelgo qui. 165 00:13:04,640 --> 00:13:13,820 Ora con ciò, costruisce di nuovo l'app proprio come per la pubblicazione e anche se sto costruendo un'app Android, la costruisce ancora per iOS qui perché alla 166 00:13:13,820 --> 00:13:19,700 fine quello che fa qui è pubblicare l'app. Quindi aspettiamo che finisca, ora 167 00:13:19,700 --> 00:13:27,160 sta facendo lo stesso di expo pubblicandolo, ma da quel momento in poi 168 00:13:27,190 --> 00:13:32,310 pianificherà che questo sia costruito sui server di expo. 169 00:13:32,350 --> 00:13:38,060 Quindi ora la pubblicazione è terminata e ora pianifica una tale build e la mette in coda, questo a proposito è un 170 00:13:38,170 --> 00:13:42,670 processo che ora puoi chiudere come dice qui, puoi sempre controllare lo stato della tua build inserendo 171 00:13:42,940 --> 00:13:44,570 questo URL, tu ' Dovrai 172 00:13:44,620 --> 00:13:48,720 accedere con il tuo account expo lì e quindi potrai vedere lo stato della build. 173 00:13:48,880 --> 00:13:49,700 Ora importante, 174 00:13:49,810 --> 00:13:51,380 questa build può richiedere molto 175 00:13:51,430 --> 00:13:57,100 tempo, la build stessa non è così tanto ma fino a quando la build non viene costruita perché è pianificata, 176 00:13:57,100 --> 00:13:59,260 tieni presente che si tratta di un servizio 177 00:13:59,380 --> 00:14:03,800 gratuito, quindi ovviamente non viene creato immediatamente ma quando i server dell'expo hanno spazio per questo. 178 00:14:03,910 --> 00:14:08,240 Questo può richiedere un paio di minuti, anche ore prima che ciò accada, quindi non preoccuparti 179 00:14:08,320 --> 00:14:13,030 se ciò richiede del tempo, puoi sempre controllare questo URL che stai vedendo nella tua riga di comando 180 00:14:13,060 --> 00:14:16,490 per vedere cosa sta succedendo. Quindi puoi uscire da questo, 181 00:14:16,500 --> 00:14:20,740 questo è anche un URL in cui troverai successivamente i file di build, 182 00:14:20,740 --> 00:14:26,830 quindi ecco il mio stato di build se lo controlliamo, vedi che è carino e in questo momento, non sta 183 00:14:26,830 --> 00:14:28,380 succedendo nient'altro, possiamo rivisitare 184 00:14:28,380 --> 00:14:33,820 questo in seguito per vedere il processo di compilazione e il download del bundle dell'app finito e 185 00:14:33,820 --> 00:14:35,890 per ora, facciamo lo stesso per iOS. 186 00:14:35,950 --> 00:14:38,500 Questo può essere 187 00:14:38,610 --> 00:14:44,890 fatto eseguendo expo build iOS. Ora importante, per creare app iOS, è necessario un account Apple Developer a 188 00:14:44,890 --> 00:14:46,270 pagamento, questo è un must. 189 00:14:46,690 --> 00:14:53,590 Quindi dovrai andare dallo sviluppatore. Mela. com e lì, dovrai accedere con il tuo 190 00:14:53,590 --> 00:14:59,650 ID Apple e quindi ottenere sostanzialmente un account così pagato, quindi dovrai aggiungere la tua carta di credito e pagare una 191 00:14:59,650 --> 00:15:02,050 commissione di $ 99. Ciò è necessario, non 192 00:15:02,050 --> 00:15:03,230 vi è alcun 193 00:15:03,310 --> 00:15:07,930 modo per evitarlo, Apple lo richiede per creare app che si desidera pubblicare nei loro negozi. 194 00:15:07,930 --> 00:15:10,210 Non è necessario durante lo sviluppo, 195 00:15:10,210 --> 00:15:13,200 ma ora per condividere l'app, è necessario averlo. 196 00:15:13,240 --> 00:15:20,290 Fondamentalmente è una tassa che è lì per consentire solo alle persone del negozio che hanno almeno una sorta di 197 00:15:20,680 --> 00:15:22,510 obiettivi seri lì immagino. 198 00:15:22,510 --> 00:15:28,210 Quindi assicurati di accedere qui e configurare il tuo account Apple Developer a pagamento per aderire al 199 00:15:28,210 --> 00:15:31,490 Programma Apple Developer e, successivamente, puoi eseguire questo comando 200 00:15:31,560 --> 00:15:38,440 e ti chiederà di accedere con il tuo account Apple Developer. Quindi accedi con il tuo ID Apple e la password 201 00:15:38,500 --> 00:15:42,880 e che i dati non verranno archiviati sui server di Expo, nessun problema, 202 00:15:42,880 --> 00:15:43,960 ma ha bisogno 203 00:15:43,960 --> 00:15:49,660 che configuri tutto per costruire la tua app perché per il processo di costruzione di Apple, hai 204 00:15:49,660 --> 00:15:54,550 bisogno di certificati speciali e così via può richiedere per tuo conto con questi dati. 205 00:15:54,640 --> 00:15:59,800 Una volta effettuato l'accesso, ti viene chiesto come vuoi gestire le tue credenziali, proprio come prima 206 00:15:59,800 --> 00:16:04,330 se non sai cosa stai facendo, dovresti lasciare che Expo gestisca tutto ciò perché, 207 00:16:04,330 --> 00:16:11,920 come ho già detto, hai bisogno di un paio di certificati speciali per creare la tua app iOS ed expo possono richiedere tutto 208 00:16:11,920 --> 00:16:17,650 ciò per te e impostare tutto ciò per te, quindi lascerò che expo faccia questo per tutti questi 209 00:16:17,960 --> 00:16:21,080 passaggi e ora farà praticamente tutto per te. 210 00:16:21,080 --> 00:16:26,500 Ora questo crea anche la mia app qui per iOS e la pubblica di nuovo prima, è lo stesso che abbiamo 211 00:16:26,510 --> 00:16:33,940 fatto prima per Android e ora abbiamo anche una build pianificata per iOS. Proprio come prima, questo è in 212 00:16:33,960 --> 00:16:40,020 coda, puoi uscire e guardare la tua build qui nel browser. 213 00:16:40,030 --> 00:16:45,660 Quindi ora non abbiamo solo quella build di Android in coda, ma abbiamo anche quella build di iOS 214 00:16:45,660 --> 00:16:48,680 in coda ed entrambi impiegheranno un po 'a finire. 215 00:16:48,690 --> 00:16:53,460 Ora c'è una cosa importante che devi fare anche dopo aver 216 00:16:53,460 --> 00:16:54,510 completato questa 217 00:16:54,510 --> 00:17:00,300 build di Android che non è ancora, dovresti eseguire expo fetch: android: keystore. 218 00:17:00,300 --> 00:17:05,580 Anche in questo caso funziona solo dopo il completamento della compilazione perché recupererà questo 219 00:17:05,580 --> 00:17:12,900 keystore generato automaticamente che Expo genera per te se lo hai scelto nella configurazione di cui hai bisogno per gli 220 00:17:13,030 --> 00:17:17,420 aggiornamenti futuri di questa app. Ne avrai sicuramente bisogno e nei futuri 221 00:17:17,460 --> 00:17:22,070 aggiornamenti quando ricostruirai l'app, dovrai quindi scegliere di fornire il tuo keystore personale e quindi devi fornire 222 00:17:22,070 --> 00:17:25,330 questo keystore, quindi inserisci il percorso di questo keystore che poi scarichi. 223 00:17:25,350 --> 00:17:30,630 Quindi questo comando alla fine scaricherà un file generato sui server di Expo che è necessario 224 00:17:30,630 --> 00:17:33,570 archiviare sul proprio sistema per futuri aggiornamenti della stessa 225 00:17:33,600 --> 00:17:35,980 app, altrimenti non sarà possibile aggiornare. 226 00:17:36,000 --> 00:17:41,040 Quindi questo è un comando importante che dovrai eseguire una volta completata questa build. Bene e con ciò, aspettiamo che 227 00:17:41,040 --> 00:17:42,600 finisca, iOS in 228 00:17:42,600 --> 00:17:46,610 realtà sta già costruendo, Android è ancora in coda ma 229 00:17:46,620 --> 00:17:49,120 iOS è già in movimento, quindi 230 00:17:49,120 --> 00:17:53,830 aspettiamo che la build di iOS finisca e ora questo è fatto, 231 00:17:53,830 --> 00:17:57,200 ora il mio iOS la compilazione è terminata. 232 00:17:57,330 --> 00:18:02,730 Ora puoi anche controllare i documenti ufficiali su come continuare con questo test sul tuo dispositivo 233 00:18:02,730 --> 00:18:08,720 o simulatore o poi andare alla parte in cui carichi l'app su Apple App Store e Google Play Store. 234 00:18:08,730 --> 00:18:09,690 Quindi costruiamo 235 00:18:09,690 --> 00:18:16,930 l'app, ora puoi caricarla eseguendo il caricamento expo: iOS, questo per impostazione predefinita utilizzerà la tua ultima app e 236 00:18:17,020 --> 00:18:18,630 la caricherà sull'App Store. 237 00:18:18,640 --> 00:18:24,100 Ora è la parte che non farò qui perché non voglio davvero pubblicare questa app qui ma 238 00:18:24,100 --> 00:18:25,710 è quello che faresti 239 00:18:25,780 --> 00:18:30,570 ora, userebbe questa applicazione che è stata appena costruita qui per iOS o per 240 00:18:30,580 --> 00:18:36,160 Android, Android build è ora funziona anche come vedo, quindi userebbe questo e poi lo pubblicherebbe con 241 00:18:36,160 --> 00:18:40,780 questo comando su iOS o con questo comando su Android, su Google Play Store. 242 00:18:40,780 --> 00:18:45,970 Ora segui i passaggi che trovi qui nei documenti per creare gli account appropriati e impostare 243 00:18:45,970 --> 00:18:49,150 tutto correttamente in modo che questo comando possa 244 00:18:49,150 --> 00:18:55,450 avere successo e con ciò, avrai la tua app distribuita sull'App Store di Apple e sul Google Play Store 245 00:18:55,450 --> 00:19:02,140 in modo che tu può portare la tua app a qualsiasi utente in tutto il mondo come app autonoma, non dipende 246 00:19:02,140 --> 00:19:05,440 dal client expo installato sui dispositivi che è abbastanza pulito.