În mijlocul întregii fanfare a unui alt WWDC, Apple ne-a prezentat la iOS 12. Aceasta este una dintre cele mai concentrate versiuni pentru consumatori și dezvoltatori, subliniind optimizarea performanțelor. Pe lângă faptul că se concentrează pe performanță și optimizare, iOS aduce și câteva iterații caracteristice pentru multe dintre bibliotecile pe care le cunoaștem și le iubim. Aceasta include evoluția emojis (cu memojis), scurtăturile Siri, realitatea augmentată și învățarea în mașină.
Pentru dezvoltatori, Apple sa concentrat pe furnizarea comunității sale cu o multitudine de noi instrumente și SDK-uri pentru a ajuta la alimentarea următoarei generații de aplicații iOS. Dezvoltatorii au, de asemenea, o mulțime de îmbunătățiri pentru Xcode, iar cele mai noi cadre ale Apple - ARKit, Core ML și SiriKit - au primit îmbunătățiri semnificative ale caracteristicilor.
Învățarea în mașină a evoluat rapid de când a fost introdusă pentru prima oară în 2017, iar Core ML 2 le-a facilitat dezvoltatorilor obișnuiți să proiecteze, să pregătească și să testeze modele. ARKit 2, cea de-a doua iterație a Bibliotecii Realitatea augmentată a Apple, este o altă bibliotecă care sa îmbunătățit distinct în acest an, datorită a trei noi caracteristici proeminente:
De asemenea, Apple a îmbunătățit notificările prin adăugarea capacității de a grupa și prioritiza notificările în mod contextual și a creat noul cadru de completare automată a parolei pentru integrarea aplicațiilor de gestionare a parolei terță parte.
Siri Shortcuts este adăugarea Apple la SiriKit, permițând dezvoltatorilor terți să integreze comenzi rapide personalizate personalizate în căutare de lumină și ecran de blocare, precum și să utilizeze vocea lor pentru a chema și a efectua acea acțiune personalizată.
Xcode 10 introduce, de asemenea, o nouă gamă de îmbunătățiri, de la modul întunecat la editare multi-cursor, noi surse de control al surselor în editorul de cod sursă și un sistem de construire complet nou. Xcode 10 susține, de asemenea, testarea paralelă, reducând timpul pentru a efectua teste drastic.
În acest articol, veți afla totul despre noile modificări care apar în iOS 12 pentru dezvoltatori. Vom acoperi următoarele:
Învățarea pe mașină, introdusă în iOS 11, nu a evoluat doar în acest an, ci a făcut pași masivi în direcția transformării procesului de învățare în mașină. Următoarea versiune a Core ML, versiunea 2, în conformitate cu tema de performanță și viteză, este acum cu 30% mai rapidă, dimensiunile modelului AI fiind reduse cu până la 75%. Mai mult, Apple a simplificat drastic bibliotecile și instrumentele pentru a facilita adoptarea de către oricine fără a avea nevoie de matematică sau de medii de învățare automată.
Core ML a arătat o mulțime de potențial atunci când a fost introdus pentru prima dată, dar nu a fost îmbrățișat de comunitatea dezvoltatorilor iOS mai larg. Cu toate acestea, odată cu introducerea de Creare ML în acest an (un cadru macOS), oricine poate crea modele Core ML pentru utilizare în aplicațiile lor cu mai multă ușurință. Acest nou cadru se integrează cu locurile de joacă în noul Xcode pentru a vă permite să interacționați vizual cu fluxurile de lucru create în timp real, doar adăugând câteva linii de cod Swift.
În plus față de suportul extins de învățare profundă cu peste 30 de tipuri de straturi, suportă și modele standard, cum ar fi ansambluri de copaci, SVM și modele generalizate lineare .... Deoarece este construit pe tehnologii de nivel inferior, cum ar fi Metal și Accelerate, Core ML profită fără probleme de CPU și GPU pentru a oferi performanțe maxime și eficiență. (WWDC)
Multe dintre produsele Apple au profitat deja de Core ML2, inclusiv Siri și Camera, prin viziunea calculatorului și prin noul cadru Natural Language. Cadrul de limbă naturală, noul pentru iOS 12, sprijină analiza textului limbajului natural pentru a deduce metadatele specifice și este utilizat alături de crearea ML în instruirea și implementarea modelelor personalizate de prelucrare a limbajului natural. Pentru mai multe informații despre crearea și funcționarea modelelor Core ML, consultați următoarele două documente de referință Apple:
ARKit, de asemenea, anunțat pentru prima oară anul trecut, a câștigat proeminență pe scena la WWDC din acest an, iar ARKit 2 captează imaginația consumatorilor și ingineriei imediat datorită a trei noi caracteristici proeminente:
Demonstrat în direct pe scenă la conferința WWDC din acest an, experiențele AR partajate vă permit să încorporați multiple utilizări în experiența realității augmentate simultan. Cu alte cuvinte, acum puteți crea rapid experiențe de realitate augmentate multiplayer, în care nu puteți juca mai mulți utilizatori, ci chiar și trecătorii care observă aceleași experiențe.
Experiențele AR persistente permit dezvoltatorilor să implementeze funcționalități pentru salvarea sesiunilor la o anumită stare, care să fie reluate într-o etapă ulterioară. Adică dacă construiți o sculptură virtuală lego, puteți să salvați și să reluați starea, iar obiectele virtuale ar persista în același spațiu și timp, fără a mai trebui să porniți din nou.
În cele din urmă, capabilitățile 3D de detectare și urmărire a obiectelor au fost îmbunătățite de la ARKit 1.5, cu capacitatea de a urmări acum complet imaginile 2D, inclusiv obiecte mobile cum ar fi cărți poștale, ziare sau reviste. Puteți, de exemplu, să țineți o carte poștală a unei locații și să mutați cartela, în timp ce ARKit urmărește continuu și recunoaște obiectul dvs. ARKit 2 vă permite, de asemenea, să detectați obiecte 3D cunoscute din lumea reală, cum ar fi televizoare, mobilier sau sculpturi.
Notificările au fost îmbunătățite semnificativ în iOS 12, având capacitatea de a prioritiza și grupa mesajele, o caracteristică pe care utilizatorii și dezvoltatorii o anticipau de mult timp.
Abilitatea de a grupa notificările în mod contextual le oferă utilizatorilor finali o experiență mai concisă a utilizatorilor, una care a fost disponibilă utilizatorilor Android de mulți ani. Utilizatorii pot utiliza, de exemplu, grupurile de notificări astfel încât un fir de conversație dintr-o notificare de aplicație sau de joc să facă parte dintr-o parcelă de grup, mai degrabă decât notificările individuale care preiau întregul ecran. În schimb, printr-o singură atingere, utilizatorii pot respinge un grup de notificări contextuale.
Notificările sunt de asemenea prioritate în funcție de importanță, astfel încât notificările esențiale, cum ar fi mesajele, e-mailurile sau o notificare din calendar, vor apărea deasupra notificărilor din mass-media sociale. Dezvoltatorii terți pot clasifica, de asemenea, o notificare ca o alertă cu prioritizare - cu aprobarea echipei de examinare Apple.
SiriKit a primit, de asemenea, o atenție deosebită acestui WWDC cu adăugarea scurtăturilor Siri. Această caracteristică sugerează în mod inteligent comenzile rapide atunci când sunt necesare, prin asocierea și prezicerea rutinelor și comportamentelor utilizatorilor. Prin noul API pentru comenzi rapide, utilizatorii pot efectua rapid și convenabil sarcinile pe ecranul de blocare sau pe ecranul de căutare utilizând aceste comenzi rapide vizual sau prin scurtături de voce Siri, precum și crearea propriilor comenzi rapide.
Un exemplu ar fi ca o notificare la magazinul de cafea să apară pe ecranul de blocare ca urmare a comportamentului utilizatorului de a merge în aer liber dimineața și de a comanda o băutură mojito de mentă. Dincolo de sugestia vizuală, utilizatorul ar putea, de asemenea, să folosească Siri și să spună: "Comandați băutura mea preferată de cafea de la Philz" sau creați o scurtătură personalizată care declanșează acea acțiune.
Apple a introdus o nouă bibliotecă AuthenticationServices care integrează administratorii de parole ca LastPass sau 1Password cu sistemul de operare al parolei. Anterior, utilizatorii au avut acces doar la acreditările stocate în keychain-ul iCloud și accesarea parolelor terță parte stocate în aplicații cum ar fi 1Password a însemnat că utilizatorii trebuiau să comute între ambele aplicații pentru a obține informațiile despre numele de utilizator și parola.
În cadrul barei QuickType, utilizatorii pot accesa acreditările lor din aplicațiile de gestionare a parolei terță parte. Dezvoltatorii au, de asemenea, capacitatea, prin implementarea noului ASWebAuthenticationSession
, pentru a distribui informații de conectare între o sesiune activă din Safari și aplicația dvs. Acest lucru funcționează ca un fel de transfer de parolă.
Apple a împuternicit dezvoltatorii dincolo de noile SDK-uri și cadre, cu îmbunătățiri notabile ale Xcode și Xcode build toolchain. Editorul sursă, de exemplu, a câștigat câteva îmbunătățiri remarcabile, inclusiv editare multi-cursor, astfel încât să puteți edita rapid mai multe linii de cod (adică diferite metode) în același timp.
Xcode 9 a introdus pentru prima oară integrarea cu GitHub, de la crearea și deschiderea repo GitHub din cadrul IDE pentru a interacționa cu codul mai colaborativ. Xcode 10 se extinde dincolo de GitHub pentru a lucra cu alți doi furnizori populari de magazie, GitLab și Bitbucket.
Pe partea editorului sursă, modificările din depozitul local sau din amonte sunt acum evidențiate în coloana din stânga, permițându-vă rapid să vedeți modificările aduse codului dvs., precum și modificările care nu au fost încă împinse, modificările din amonte pe care le-au făcut și alte conflicte posibile care urmează să fie abordate înainte de comitete. În cele din urmă, Xcode 10 generează chei SSH pentru dvs. dacă este necesar și le încarcă în depozitul de control sursă pentru dvs..
Mergând la rândul de instrumente, Xcode 10 introduce un sistem complet nou pentru dezvoltatori și, în conformitate cu tema conferinței, câștigă performanțe și îmbunătățiri ale vitezei. De exemplu, dezvoltatorii care testează aplicațiile lor în Simulator pot acum să parcurgă paralelizarea testului, capacitatea de a executa mai multe teste în același timp.
În plus față de testele de unitate, dezvoltatorii pot rula acum teste de integrare continuă pe mai multe tipuri diferite de dispozitive simulate, clone de reproducere ale unui singur dispozitiv simulat, rezultând încercări care se finalizează într-o fracțiune din timpul Xcode 9. Dezvoltatorii pot alege fie să profite de CPU-ul Mac-ului lor pentru a efectua testele în paralel, fie să aloce un alt Mac în rețeaua ce găzduiește Xcode Server pentru a automatiza construirea și testarea în paralel.
Apple a depreciat acum imprimare()
declarații în favoarea noului OSLog
indicații de semnătură, care prevăd o viteză mult mai mare de depanare comparativ cu imprimare()
. De asemenea, dezvoltatorii pot implementa instrumente personalizate pentru a marca puncte semnificative în întregul cod, care sunt apoi urmărite prin intermediul semnalizatoarelor din cadrul instrumentelor, care apar alături de alte evenimente de analiză (cum ar fi procesorul, memoria sau rețeaua), oferindu-le dezvoltatorilor o imagine mai bună pentru depanarea aplicațiilor.
Xcode 10 include, de asemenea, șabloane personalizate pentru a ajuta dezvoltatorii să-și construiască propriile instrumente cu vizualizare personalizată și analiză de date, care să poată fi reutilizate și împărtășite altor membri ai echipei sau publicate împreună cu cadrele dvs. Există și alte modificări minore ale icoanelor, inclusiv mutarea conținutului bibliotecii într-o nouă fereastră de suprapunere în loc de partea inferioară a inspectorului. Există, de asemenea, alte modificări minore la icoanele Interface Builder și layout-ul.
iTunes Connect a fost rebranded în mod adecvat ca App Store Connect, împreună cu unele îmbunătățiri pentru a face interfața cu utilizatorul mai eficientă, dar ușor de utilizat. Prin noua interfață web, dezvoltatorii pot crea pagini de produs cu capturi de ecran și previzualizări, pot comuta achiziții în aplicații și pot seta abonamente, precomenzi și prețuri introductive.
În cele din urmă, TestFlight a primit o îmbunătățire proeminentă cu o nouă funcție denumită TestFlight Public Link, care face procesul de a invita oamenii să vă testeze aplicația mult mai ușor. În cazul în care anterior dezvoltatorul ar fi nevoit să invite manual utilizatorii care utilizează adresele lor de e-mail în ceea ce a fost un proces greoi, dezvoltatorii pot crea acum o "invitație deschisă" printr-o adresă publică publică.
iOS 12 este o versiune foarte concentrată atât pentru consumatori, cât și pentru dezvoltatori, cu accent pe optimizarea performanțelor. Pentru dezvoltatori, Xcode și instrumentele de construire și testare au fost optimizate cu accent pe viteza în prim plan, iar cele mai noi cadre ale Apple, cum ar fi ARKit, Core ML și SiriKit, au primit îmbunătățiri semnificative ale caracteristicilor.
În decursul a doi ani, începem să vedem că incursiunea Apple în procesul de învățare a mașinilor evoluează și se maturizează, beneficiile fiind preluate în cadrul altor tehnologii, cum ar fi SiriKit, ARKit și Photos, permițând dezvoltatorilor să creeze experiențe mai inteligente pentru utilizatori. Mai important, învățarea de mașină a trecut de la o bibliotecă de nișă la una în care orice dezvoltator - indiferent de experiența de învățare a mașinilor - poate să instruiască și să implementeze modele.
Cu ajutorul serviciului WWDC ca un preludiu al anunțurilor hardware ale Apple în septembrie, va fi interesant să vedem cum comunitatea de dezvoltatori îmbrățișează ARKit în cea de-a doua iterație, în spațiul jocurilor multiplayer.