WWDC, sunulan tüm yeni özellikler iOS 8'in belki de uzantısı (genişletilebilirlik) çok önemlidir. Onlar OS'nin daha da geliştirilmesi üzerinde büyük bir etkiye sahip olmalıdır. Genellikle bu özellik olarak tanımlanır "birbirleri ile etkileşim üçüncü parti uygulamalar yeteneği." etkileşim uzantıları tek olasılık değildir, bu durum elbette, çok abartılı ve onlar tam olarak birbirleriyle doğrudan iletişim kuramaz.
Biz uzantılarının nasıl çalıştığını anlamak için WWDC gelen geliştirici belgeleri ve videoları okumak ve Elma sistem ve kullanıcı veri güvenliği açıklık arasında bir uzlaşma bulmuş ve bu konuda konuşmak istiyorum nasıl Eğer.
Ne Yani genişleme mı?
Üçüncü taraf uygulamalar etkinleştirilmesi genişleme çözmek için sadece bir problem, birbirlerine erişmek için. Klavyenin Yan; iCloud'dan ek olarak diğer depolama bulutu ile uygulama entegrasyonu; Bildirim Merkezi'nde widget'ları - Tüm bu uzantılar tarafından üstlenilir.
Aslında, tüm iOS üçüncü parti geliştiriciler "gelişmiş" olabilir. Varsayılan uygulamayı değiştirmek veya kontrol odasındaki bir anahtarı eklemek istiyorsanız Örneğin, - Eğer çalışmaz. Elma o kadar açıkça çalışabilir işletim sisteminin herhangi bir bölümünü geliştiricilere göstermek için "uzatma noktalarını» (uzatma puan), tanımlanmadı sağlar. Bu noktaların bir listesi aşağıdaki gibidir:
- genişleme Bugün (Bugün uzantıları) veya widget'ları - Bildirim Merkezi'nde anında bilgi sağlamak için kullanılır. Canlı fayans Windows Phone ve Android ana ekran widget'ları bir tepki olarak onları düşünebilirsiniz.
- alışverişini geliştirmek (Hisse uzantıları) - online hizmetlerde fotoğrafları, bağlantıları veya uygulamanın diğer dosya göndermek için izin verir. Böyle bir uygulamadan doğrudan Dropbox veya onedrive için Pinterest fotoğrafları veya yükleme dosyalarını gönderme olarak.
- ölçeklendirme (Eylem uzantıları) - için kullanılan "başka bir uygulama bağlamında manipülasyon veya görüntüleme içerik." Başka bir deyişle, bu araç size, bir metin belgesinde mevcuttur fotoğraf, düzenleyebilir veya ki Örneğin, sunumda gösterildiği gibi, Bing gibi kullanım şey bir pencerede metni çevirmek Çevir Safari.
- fotoğraf düzenleme için uzantılar (Fotoğraf düzenleme uzantıları) - Kamera rulo görüntüleri izlerken diğer uygulamaların düzenleme özelliklerini kullanabilirsiniz.
- genişletilmiş depolama (Depolama Sağlayıcı uzantıları) - bulut depolama bir dizi açık belgelere uygulamaları sağlar. Örneğin, belgelerinizi Dropbox ve iPad ya Sayfalar Ofisi doğrudan dışarı erişimini bunları saklamak için kullanabilirsiniz.
- Üçüncü taraf klavyeler için uzantılar (Özel klavye uzantıları) - iOS standart klavyeyi değiştirin.
Dedi uzantıları iOS, ama bunların çoğu (widget'lar dahil alışverişinde ve genişletme ark.), OS X Yosemite'ye Running yanı sıra iOS'taki. Mac yüz benzer kısıtlamalar kum havuzu ve uzantıları uygulanması App Store geliştiricilerin uygulamaları hayatlarını kolaylaştırmak ısırdı. Gerçi, büyük olasılıkla, pek çok geliştirici hiç Mac App Store'u kaçınarak, onları kaçmaya devam ediyor.
Android'de çalışan sistem niyet (Intents sistemi), gelen uzatma noktaları farklılık göstereceğinden Bu ön listesi. Android'de Uygulamalar yaptıkları ve sap olabilir hangi eylemleri işletim sistemini anlamak için filtreleri kullanın. Örneğin, Twitter ve Facebook Fotoğraf ve bağlantı gönderebilir; Google Drive ve Dropbox çeşitli dosyaları indirebilirsiniz; Chrome ve Firefox web sayfaları, vb açabilir Üçüncü taraf geliştiriciler bile işletim sisteminde faaliyet gösterecek filtreleri kendileri de ayarlayabilirsiniz.
Aynı zamanda, iOS olmasa sebepsiz, bu konuda çok sınırlamadır. Ancak, sıradan kullanıcılar için tüm bu fark ve güvenlik politikasını korurken meslektaşları Android, iOS farklı olacaktır biraz daha genişlemez.
Nasıl uzantıları yüklemek, ve nasıl çalıştıkları yapmalı?
iOS için sıra tüm resmi uygulamada olduğu gibi, uzantıları App Store'dan indirilebilir. Buradaki en büyük sınırlama Apple geliştiricileri "saf formda" uzantı yayınlamak için izin olmamasıdır. Her bir uzantı da herhangi bir bazik özelliğe taşıyan ve kullanıcı için yararlı olması gerekir uygulama (ihtiva eden uygulama), bir parçası olarak dağıtılmalıdır. olduğunu, geliştiriciler olarak Android'in şu anda oluyor, App Store sadece bir widget ya da sadece klavye yayın yapamaz. Aynı zamanda, Apple başvurunuzu içerebilir sayısı ve uzantıları türleri, üzerinde herhangi bir kısıtlama getirmemektedir.
Elma geliştiriciler için diğer önerileri gerekli değildir. Bu standard OS uygulamaları karşılık gelmelidir uzantılarının tasarım, için geçerlidir: widget'ları farklılık yok radikal bir şekilde farklı - Film Rulosunda menüyü düzenleme mevcut Bildirim Merkezi'nde widget ve fotoğraftan yerli. Muhtemelen orada bu önerilere uymayan olanlar vardır, ama Apple felsefesine geliştirici ve ya bağlı çoğunluğu uygulamalarını oluştururken başlıca nedeni.
Her uzantı farklı şekillerde devreye girer. Widget'lar - Bildirim Merkezi'nden, klavyeler - Bölgesel sistem ayarlarından. fotoğraf düzenleme ve depolama genişletilmesi sadece onlarla etkileşim sağlar uygulamaların belli durumlarda denir. alışverişini geliştirin ve eylem herhangi bir uygulamadan çağrılabilir, ancak geliştiriciler genişletmek ve işlenecek olan veri belirtmek için aktivasyon kuralları eklemelisiniz. Uzantınızın yalnızca fotoğraflar alışverişi için sağlarsa, bir kullanıcı bir bağlantı veya belge paylaşmak istediğinde genişleme görünmüyor kuralları aktivasyonu bunu belirtmeniz gerekir.
tüm uzantılar uygulamaya içeren (app) içinde "paketlenmiş" gerektiği gerçeğine rağmen, bunlar bağımsız olarak çalışabilir. Her uzantısı - Bu ana uygulama başlatmak zorunda kalmadan yapılır ve kapalı iş açan bir küçük ikili .appex-dosyasıdır. ana başvuru ile aynı görevleri yerine uzantıları (örneğin Instagram, bir filtre eklemek için kullanılan ) Görüntüye kullanmaları önerilir yerleşik bir ilgili görev için gerekli çalıştırılabilir kod iletimi için çerçeve. Bir çerçeve oluşturma oraya kodu koyup uygulamada ve uzantısında hem bu çerçeveyi oluşturmak mümkün olacaktır. Burada tek sınırlama önceki işletim sistemlerinde çalışmaz olarak bu uygulamaların, yukarıda iOS sürüm 8 ve gerektirecektir olmasıdır.
bunun uygulamadan ayrı olarak çalıştırmak genişleme nedenlerinden biri, tüketilen bellek miktarına Apple sabit sınırıdır. kullanıcı birden fazla eşzamanlı widget'lar gibi özellikle bu küçük aracın için de geçerlidir.
Buna ek olarak, widget'lar uzun süre çalışmaz ve zorla kapatılmasından sonra cihazdan kaldırıldı. bu tür dosyaları indirme gibi uzun arka plan görevleri gerçekleştirmek uzantıları için Apple bu görevler sistemini aktarmak ve sonra kapatmak için önerir.
Yani iOS uzantıları üzerindeki tüm ana noktaları, bu. Bunu gelişmiş güçler rağmen kesinlikle belgelenmiş tüm olası uzantılarını görmek, ama aslında dikkat çekicidir gibi, geliştiriciler ve uygulamalar tarafından sağlanan, onlar içinde güvenlik politikasını ve iş varolan ihlal etmeyen onun "Sandbox".
kullanıcı verilerinin güvenliği. Android'den Farklar
Özetle, gizlilik ve güvenlik verilerine yaklaşımı arasındaki fark iOS ve Android kullanıcıları Bu ikinci için yeterli olan ip, bir dizi ile geliştiriciler sağlamasıdır asmak kendisi.
Android kullanıcıları her uygulamanın yüklenmesi önce varsayılan güvenlik ayarlarını kullanmak Aslında, geniş bir liste okumak o yapabileceğiniz şeyler - üçüncü kişilere veya kötü amaçlı yazılım enfeksiyona kendi kişisel verilerin tehlike böyle değildi Büyük. Ama bütün bu haklar uygulamaları karışıklığa yol. Bazı insanlar Google Play'den, aynı zamanda diğer kaynaklardan sadece uygulamaları yüklemek için seçin; Diğerleri alternatif dağılımlarını yükleyebilmek için, kök erişmek isteyen - hiç problem, her şey Android ile mümkündür. Bu tür şeyler ilgi platformuna bazı kullanıcılar, ancak kendi risk her şeyi.
açılımları tanıtılması hala arasındaki engelleri dikiyor bile, iOS bak uygulamalar ve koruma kullanıcılara kendi uzantıları ve veri uygulamaları (ve onların bilgi) dan kendileri. Dediğimiz gibi genişleme içeren uygulamadan ayrı olarak işletilen küçük ikili dosyalar olduğu için hala uygulamaları, birbiriyle doğrudan hitap edemez. ancak bu (app ihtiva eder) ihtiva eder, bu uygulama ile, (Elma terminolojisinde ana uygulamasını) genişleme neden genişletmek belirtir herhangi bir uygulama. konak uygulama uzantısını kullanması gerekir bu durumda, bu uygulama verilerine erişebilir asla yerine doğrudan olmayan bu yeni sistem çerçevesinde aracılığıyla bir istek gönderir ve.
FortyTwo Inc.'in Geliştirici Eduardo Fonseca iOS uygulamaları ve uzantıları tutmak için nasıl yönetileceğini açıklar "güvenli bir mesafeden."
"Her bir uzantı - bu, ayrı çalıştırılabilir içeren ana paket uygulama içinde, ayrı paket (demet) olan" - Fonseca söyledi. "Burada komik bir şey genişleme bir uygulama olmadığıdır. Bu genişleme başlama sürecini başlatır açık bir şekilde tanımlanmış bir arayüz kullanılarak elma sistem çerçeveleri yoluyla ortaya çıkar. Bu durumda, kod ayrı ayrı çalıştırılır ve bu üçüncü taraf kodu performansı uygulama içinde olamaz anlamına gelir. Bu nedenle, diğer uygulamalar içinde uzantıları kullandığınızda (Safari gibi) uzantısını destekleyecek uygulamalar sorunlarla karşılaşabilirsiniz dair hiçbir riski yoktur. Bunlar yağ ve su gibi - onlar karışmaz ".
genişleme aynı uygulamayı sahip başvurmak için gerekli olsa bile, bu sadece sistem API yoluyla meydana Buet. Varsayılan olarak uygulama birbirlerinin verilerine erişemez uzantısı ve kendisi genişlemesini içerir.
Bunların arasında veri alışverişi için, onlara onları dış kap içinde bazı genel bilgiler, hem dışında sanal olmasını sağlayacak bir uygulama grubunda (Uygulama Grubu), bir parçası yapmak gerekir. Muhtemelen iOS'ta Google Chrome'da hesabınıza giriş yaptıktan sonra, ayrıca ve Google Maps ve Google Drive'a kaydedilir fark - bu uygulama Grubunu kullanarak sonucudur. Ama bu grupların değiştirilebilir belirli veri türleri ile sınırlıdır. İzin verilen döviz veritabanı önbellek hesap bilgileri. Ancak, yerel belgeler ve medya dosyaları için geçerli değildir - onlar hala yasaklandı.
Basitçe söylemek gerekirse, Apple bazı uygulamaların diğer bir kum havuzuna erişimi olmasını istemiyor. Uzantıları, farklı uygulamalar etkileşimi kolaylaştıracak başka Sandbox içindeki küçük kum vardır ama bir uzantısını içeren uygulama (ana bilgisayar uygulaması) veri uygulaması (içeren başlatılması yakın asla izin Uygulama).
Uzantıları çalıştırmak mekanizmalar da uygulamadan farklıdır. Böyle Safari ve Posta gibi bazı uygulamaların aynı uzantıyı çalıştırırsanız sistem ayrı süreçlerde çalışacak bu genişleme, iki kopyasını açılacaktır. Bu uzantılar, farklı bellek alanlarında depolanır. Böylece hem uygulamaların bilgi farklı yerlerde saklanır ve sadece kendi verilerine erişebilir. Aynı nedenle, tarayıcılar ayrı sekmelerde sitelerin çeşitli açın.
Android, birinde saklanan verileri korumayı amaçlamaktadır kendi sanal modelini sağlar (İstenirse, geliştiriciler kolayca çalışabilirsiniz, rağmen) onlara erişimi olmayan diğer uygulamalardan uygulaması. Burada özellikle tehlikeli uygulamalar bunun tüm verilere okumak için haklarının verilmesi ve yazma erişimi olan Uygulama halen diğerinin verilere erişmek mümkün olmasına rağmen, hatta Android 4.2. modası geçmiş uygulamalar.
Yine, bu mekanizmaların hepsi doğru kullanıldığında sadece etkilidir, ama insanlar nadir olma eğilimi Lisans sözleşmesini okuyun ve sadece kendi verilerini gösterme, yüklemek için yazılımı sağlayan ve bu talebi katılıyorum riski. Elma çok şimdi bile iOS açıkça bazı bilgileri kullanmak prilolzheniya neler görülebilir gizlilik anahtarlar, birlikte konforlu bir ortam vardır içinde bu konuya çok uygundur, ve kapanır. Google gibi bir şey, Android 4.4 duyurulan, ancak bu son sürümde maalesef yoktu. Bu uzantısı doğrudan bağlantıları vardır, ancak bu iOS 8, kullanıcıların güvenlik ve gizlilik uğruna esneklik feda etmeye devam nasıl iyi bir örnektir.
Apple da genişlemesi üzerindeki diğer kısıtlamalar getirir - hepsi uygulamalar tarafından erişilen API kullanamazsınız. Özellikle özel klavyeye de zorunlu gereksinimleri ve kurallarıyla sınırlı sayıda. etkileşim Elma uzantıları Mekanizmaları o kullanımlı Google farklıdır ve aslında iOS 8 kalıntılar Android ile karşılaştırıldığında, işletim sistemini kapattı. Üçüncü taraf uygulamalar hala kendi aralarında doğrudan iletişim ve sistem elemanları olamaz Böyle ana ekranda veya kilit ekranı olarak özelleştirme mükellef, hem de uygulamalar için değil Standart.
Bununla birlikte, Apple nihayet mobil platformunun hakkında tek en büyük şikayetleri dinleyerek oluşturduğu tedbirler almıştır fakat görünüyor Bellek gereksinimleri veya güvenlik tehditleri artırabilir şiddetli bir işlem yapmadan onu tarzı için karakteristik, Kullanıcılar. iOS 8 henüz yayınlanmamıştır iken Şimdi, avantaj ve böyle bir yaklaşımın dezavantajları yargılamak zordur, ama kağıt üzerinde tüm görünüyor çok umut verici.
(üzerinden)