Od vseh novih funkcij iOS 8 predstavljena na WWDC, je najbolj pomembno, morda, so podaljšek (raztegljivost). Morali bi imeti velik vpliv na nadaljnji razvoj OS. Pogosto je ta funkcija opisana kot "sposobnost aplikacij tretjih oseb za interakcijo s seboj." To, seveda, je preveč pretirana, saj je interakcija ni edina možnost razširitve, in jih ni mogoče neposredno komunicirajo med seboj, če smo natančni.
Imamo preberite dokumentacijo za razvijalce in video posnetke iz WWDC, razumeti, kako delujejo razširitve in kako je Apple našel kompromis med odprtostjo varnosti sistema in uporabniških podatkov in bi rad govoril o tem vi.
Torej, kaj storiti širitev?
Omogočanje aplikacij tretjih oseb za dostop do drug drugega, to je samo ena težava, ki je za reševanje širitev. Strani tipkovnice; integracije aplikacij z drugimi oblak skladiščenja, poleg iCloud; pripomočki v Notification Center - vse to je s razširitve nosi tudi.
V bistvu, ne vse iOS lahko "poveča" razvijalcem tretjih oseb. Na primer, če želite zamenjati privzeto aplikacijo ali dodati stikalo v kontrolni sobi - ne bo delovala. Apple ponuja ni toliko jasno opredeljen "podaljškov točk» (razširitev točk), za prikaz razvijalcem koli del operacijskega sistema, ki ga lahko delajo. Seznam teh točk, kot sledi:
- širitev Danes (razširitve Danes) ali pripomočki - se uporabljajo za zagotavljanje takojšnje informacije v obvestilu Center. Lahko jih obravnava kot odgovor na žive ploščice Windows Phone in Android pripomočki domači zaslon.
- okrepiti izmenjavo (razširitve Share) - vam omogoča pošiljanje fotografij, povezav ali drugih datotek za uporabo v spletnih storitvah. Tako kot objavljate fotografije na Pinterest ali nalaganje datotek na Dropbox ali OneDrive neposredno iz aplikacije.
- povečanje (razširitve Akcijske) - ki se uporabljajo za "manipulacijo ali ogled vsebin v okviru druge aplikacije." Z drugimi besedami to pomeni, da si lahko uredite fotografijo, ki je vsebovana v dokumentu z besedilom, ali, Na primer, kot je prikazano na predstavitvi, uporaba nekaj podobnega Bing Translate za prevod besedila v oknu Safari.
- Razširitve za urejanje fotografij (razširitve Foto Urejanje) - lahko uporabite urejanje zmogljivosti drugih aplikacij, ko gledate slike v roll fotoaparata.
- razširil shranjevanje (Storage razširitve Ponudnik) - omogoča aplikacije na odprtih dokumentov iz številnih shranjevanje v oblaku. Na primer, lahko uporabite za shranjevanje dokumentov za varno shrambo in dostop do njih neposredno iz Urada za iPad ali strani.
- Razširitve za klaviature tretjih oseb (meri razširitve na tipkovnici) - zamenjati standardne tipkovnice v sistemu iOS.
Omenjeni razširitve iOS, vendar mnogi od njih (vključno s pripomočki izmenjavo in širitev al.) Tek na OS X Yosemite, kot tudi v sistemu iOS. aplikacije iz razvijalci App Store v Mac soočajo s podobnimi omejitvami peskovniku in izvedbo razširitve bit poenostaviti svoje življenje. Čeprav, najbolj verjetno, mnogi razvijalci še naprej jim izogniti, da bi se izognili Mac App Store sploh.
Ta predhodna seznam razširitev točk razlikuje od sistema nameni (namere sistem), ki delujejo na Android. Aplikacije za Android uporabite filtre za razumevanje operacijski sistem, kateri ukrepi se lahko opravljajo in ročaj. Na primer, lahko Twitter in Facebook objavili fotografije in povezave; Google Drive in Dropbox lahko prenesete različne datoteke; Chrome in Firefox lahko odprete spletne strani, itd tretji razvijalci lahko celo nastavite sami filtre, ki bo deloval v operacijskem sistemu.
Ob istem času, iOS je veliko omejitev v zvezi s tem, čeprav ne brez razloga. Vendar pa je za običajne uporabnike, ne bodo opazili, vse to in še razširiti malo, kot se razlikujejo od svojih kolegov Android, iOS, hkrati pa ohranja varnostno politiko.
Kako namestiti razširitve, in kako se ne dela?
Kakor tudi vse uradne aplikacije za iOS je, razširitve prenesli iz App Store. Največja omejitev tukaj je, da Apple ne omogoča razvijalcem, da objavi razširitve v »čisti obliki«. Vsako podaljšanje je treba razdeliti, kot del vloge (ki vsebuje aplikacije), ki naj bi v zameno opravi vsako osnovno funkcionalnost in biti koristna za uporabnika. To pomeni, da razvijalci ne more objaviti na App Store le gradnikov ali samo tipkovnico, kot se sedaj dogaja v Android. Ob istem času, Apple ne nalaga nobenih omejitev glede števila in vrste razširitve, ki lahko vsebuje vašo prijavo.
Druga priporočila za razvijalce Apple niso potrebne. To velja za zasnovo razširitve, ki mora ustrezati standardnih aplikacij OS: gradniki ne razlikujejo iz obstoječih pripomočki v Notification Center, in fotografijo meni urejanjem v mapo fotoaparata - bistveno razlikujejo od materni. Verjetno so tisti, ki ne ravnajo v skladu s temi priporočili, ampak predvsem zato, ker je večina razvijalcev in držijo filozofije Apple pri ustvarjanju svoje vloge.
Vsako podaljšanje je aktiviran na različne načine. Pripomočki - od Notification Center, klaviature - od regionalnih sistemskih nastavitev. Razširitev urejanje in shranjevanje fotografij, so le ti v nekaterih primerih aplikacij, ki zagotavlja interakcijo z njimi. Izboljšanje izmenjave in akcija se lahko imenuje iz katere koli aplikacije, vendar razvijalci morajo dodati pravila Vklopne razširiti in določiti, katere podatke je treba obdelati. Če vaša razširitev zagotavlja samo za izmenjavo fotografij, jo morate navesti pri aktiviranju pravil, da širitev ne pojavi, ko uporabnik želi deliti povezavo ali dokument.
Kljub dejstvu, da morajo biti vse razširitve "zapakirani" v aplikaciji (ki vsebuje aplikacijo), ki lahko deluje samostojno. Vsako podaljšanje - to je majhen binarno .appex-datoteka, ki se odpre delo opravljeno in zaprt, ne da bi morali začeti glavno vlogo. Za razširitev, ki opravljajo enake naloge kot njihovi glavni vlogi (npr Instagram, ki se uporablja za dodajanje filter na sliki) se spodbuja k uporabi vgrajen okvir za prenos izvedljivo kodo, potrebne za posamezno nalogo. Ustvariti okvir, dal kodo notri in boste lahko za izgradnjo tega okvira, tako v vlogi in v podaljšku. Edina omejitev v tem, da bodo te aplikacije zahtevajo iOS različico 8 in več, ne bo deloval v prejšnjih operacijskih sistemih.
Eden od razlogov za širitev vodijo ločeno od vloge njenega, je Apple težko omejitev količine pomnilnika porabi. Še posebej to velja za gradnik, saj ima lahko uporabnik več sočasnih pripomočke.
Poleg tega, da pripomočki ne deluje za dolgo časa, in prisilno odstranjena iz naprave po zaprtju. Za razširitev, ki opravljajo dolge opravila v ozadju, kot so prenos datotek, Apple priporoča, da prenese te naloge sistem, in ga nato zaprite.
To je vse glavne točke, na razširitev iOS z. Kot lahko vidite vse možne razširitve strogo dokumentirane, vendar je znan po tem, da kljub več pristojnosti, ki jih razvijalci in njihovih aplikacij, ki jih ne kršijo obstoječo varnostno politiko in delo v okviru svoje "Peskovnik".
Varnost podatkov uporabnika. Razlike iz Android
Na kratko, razlika med pristopom do podatkov o zasebnosti in varnosti iOS in Android uporabniki Prav je, da ta omogoča razvijalcem več vrvi, kar je dovolj, da visi sam.
V bistvu, če uporabniki Android uporabljate privzete varnostne nastavitve pred namestitvijo vsake aplikacije prebrati obsežen seznam Stvari lahko storite - nevarnost njihovih osebnih podatkov tretjim osebam ali okužbe z zlonamerno programsko opremo ni bilo tako super. Aplikacije, vse te pravice lahko povzroči zmedo. Nekateri ljudje se odločijo za namestitev aplikacije, ne samo iz Google Play, pa tudi iz drugih virov; drugi želijo, da bi dobili korenski-dostop, da bi namestitev alternativnih distribucij - nobenih težav, vse je mogoče z Androidom. Takšne stvari so zanimivi nekateri uporabniki na platformi, vendar so to vse na lastno odgovornost.
Poglej iOS, ki je, tudi z uvedbo širitve še vedno postavi ovire med aplikacije in njihove razširitve in podatkovne aplikacije za zaščito uporabnikov (in njihovi podatki) iz sami. Kot smo že dejali, še vedno aplikacije ne morejo med seboj obravnavajo neposredno, saj je širitev je majhna binarne datoteke, ki delujejo ločeno od vloge, ki vsebuje. Vsaka vloga, ki povzroča (aplikacijo gostinskih storitev v Apple terminologiji) razširitev se nanaša na širitev, vendar ne z aplikacijo, ki jo vsebuje (vsebuje aplikacijo). V tem primeru, ko je vloga gostitelja mora uporabljati razširitev, da pošlje zahtevo prek sistemskega okvira, ne pa neposredno, in nikoli ne bodo imeli dostop do podatkov aplikacij.
Razvijalec FortyTwo Inc. Eduardo Fonseca pojasnjuje, kako je uspelo obdržati iOS aplikacije in razširitve "na varni razdalji."
"Vsako podaljšanje - to je poseben paket (paket) znotraj glavnega svežnja aplikacijo, ki vsebuje ločene izvedljive" - pravi Fonseca. "Hecno tukaj je, da širitev ni vloga. To je povzročilo preko okvirov sistema Apple, s pomočjo jasno opredeljen vmesnik, ki sproži proces se začne širitev. V tem primeru je koda izvede ločeno, kar pomeni, da je uspešnost vsake kode tretjih oseb, ne more biti v uporabi. Zato ni nevarnosti, da aplikacije, ki bodo podprli razširitev (kot so Safari), lahko pride do težav pri uporabi razširitev znotraj drugih aplikacij. So kot olje in voda - ne mešati ".
Tudi če je širitev treba sklicevati, da imajo enako vlogo, BUET to zgodi le s pomočjo API sistema. Privzeto, aplikacija vsebuje podaljšanje in razširitev sama po sebi ne morejo dostopati do podatkov, drug drugega.
Za izmenjavo podatkov med njimi, kar potrebujete, da bi postali del skupine aplikacij (App Group), ki bo omogočilo, da imajo nekaj splošnih informacij v zunanji posodi, tako zunaj v peskovniku. Verjetno ste opazili, da ko se prijavite na svoj račun v Google Chrome za iOS, boste prijavljeni tudi v in na Google Maps in Google Drive - je rezultat uporabe skupino aplikacij. Vendar so tudi te skupine omejena na določene vrste podatkov, ki jih je mogoče zamenjati. Dovoljena informacije predpomnilnik račun izmenjavo baz podatkov. Vendar pa je za lokalne dokumentov in medijskih datotek ni tako - so še vedno prepovedani.
Preprosto povedano, Apple ne želi nekatere aplikacije, da imajo dostop do drugih peskovniku. Razširitve so majhne peskovnik v drugem peskovniku, ki bo olajšalo interakcijo različnih aplikacij, vendar nikoli dovoljeno ob zagonu aplikacije (gostiteljske aplikacije) uporabo podatkov, ki jih vsebuje razširitev (ki vsebuje app).
Mehanizmi delujejo Razširitve se tudi razlikuje od uporabe. Če zaženete isto razširitev v več aplikacijah, kot so Safari in Mail, bo sistem odprl dva izvoda te širitve, ki bo potekal v ločenih procesih. Te razširitve so shranjeni v različnih pomnilniških področjih. Tako so informacije o obeh prijav shranjeni v različnih krajih, in imajo dostop samo do svojih podatkov. Iz istega razloga, brskalniki odpirajo različne mest v ločenih zavihkih.
Android ponuja svoj peskovnik model, katerega cilj je tudi za zaščito podatkov, shranjenih v enem Vloga iz drugih aplikacij, ki nimajo dostopa do njih (čeprav, če tako želi, lahko razvijalci enostavno delo okoli jo). Še posebej nevarno tukaj je podelitev pravic za branje in dostop za pisanje do vseh podatkov aplikacij, ki zastarel celo Android 4.2., čeprav je vloga še vedno lahko dostopali do podatkov o drugih aplikacije.
Še enkrat, vsi ti mehanizmi so učinkoviti le, če se uporablja pravilno, ampak ljudje ponavadi redki preberite licenčno pogodbo in samo strinjam s teh zahtev, ki zagotavlja programsko opremo za namestitev, izpostavljal svoje podatke tveganje. Apple je zelo zelo primeren za to vprašanje, in tudi sedaj ima iOS udobno nastavitev z zasebnostjo stikala, ki jih je mogoče jasno videti, kaj prilolzheniya uporabiti nekaj informacij. Nekaj podobnega Google napovedal v Android 4.4, vendar v končni sprostitev to, žal, ni bilo tam. To nima neposredne zveze z razširitvijo, vendar je to dober primer, kako je iOS 8, še žrtvovati fleksibilnost zaradi varnosti in zasebnosti uporabnikov.
Apple uvaja tudi druge omejitve za širitev - ne morejo uporabljati vsi API, ki je dostop do aplikacij. Zlasti meri tipkovnici omejeno število obveznih zahtev in pravil. Mehanizmi razširitev medsebojnega Apple so drugačni od tistih, ki jih uporablja Google, in v resnici, iOS 8 ostane zaprta operacijski sistem, v primerjavi z Androidom. Aplikacije tretjih oseb še vedno ne more neposredno komunicirajo med seboj, in elementi sistema kot začetnem zaslonu ali na zaklenjenem zaslonu ni predmet prilagajanja, kot tudi aplikacije za Privzeto.
Kljub temu se zdi, da je Apple končno prisluhnili posameznih največjih pritožb o svoji mobilni platformi in je sprejela ukrepe, vendar značilno za njen stil, brez izrazitih ukrepov, ki bi lahko povečala zahteve pomnilnika ali varnostnih groženj uporabniki. Zdaj, medtem ko je iOS 8 še ni bilo objavljeno, da je težko oceniti prednosti in slabosti takšnega pristopa, ampak na papirju je vse videti zelo obetavno.
(preko)