Geliştiriciler için iOS 9 Betaları ve WatchOS 2
Yayınlanan: 2022-03-11Apple'ın en yeni mobil işletim sistemi çıktı ve bir iOS geliştiricisiyseniz, bilmeniz gerekenler burada. iOS 9.x'teki değişiklikler sadece derinlemesine değil, kapsamlı bir yeniden tasarımın olmaması, sıradan gözlemcilerin büyük bir güncelleme olmadığı sonucuna varmasına neden olabilir. Bu evrimsel bir adımdır, iOS 9.x hakkında devrim niteliğinde hiçbir şey yoktur, ancak birkaç yeni özelliği destekler.
Yenilenmiş 6S serisi iPhone'lara gelen 3D Touch'ı zaten ele aldık, ancak bu, bahsetmeye değer yalnızca bir iOS 9.x özelliğidir. Yeni güncelleme ayrıca, Apple'ın üretkenliğe odaklanarak büyük boyutlu iPad Pro'yu başlatma kararı göz önüne alındığında anlaşılabilir olan birçok tablet odaklı ince ayar getiriyor. İPad'ler için çoklu görev, bölünmüş görünüm, kaydırma ve resim içinde resim modlarını içereceğinden çok daha iyi hale gelmek üzere.
Android ve Microsoft geliştiricileri, platformlarının zaten böyle bir işlevselliğe sahip olduğunu söyleyebilir ve haklı olabilirler: Apple partiye geç kaldı ve iOS, çoklu görevlerde yıllarca Android'in gerisinde kaldı.
Bununla birlikte, çoklu görev ve üretkenlik uygulamalarına ek olarak, iOS 9.x, içerik tüketimi göz önünde bulundurularak tasarlanmış bir dizi özelliğe de sahiptir. Apple, SceneKit, SpriteKit ve Metal üzerinde ince ayar yaparak iOS oyun geliştiricilerinin bazı gelişmiş özellikleri kullanmasına ve oyunları daha da ayrıntılı hale getirmesine izin verdi. Arama, daha iyi içerik indeksleme, geçmiş ve web işaretlemesi ile bir güncelleme alıyor.
Oh, ve Force Touch için Apple pazarlama konuşması olan 3D Touch'ı da unutmayalım. Bu konuyu iOS 9 duyurulduğunda zaten ayrıntılı olarak ele almıştım ve eğer kaçırdıysanız bir göz atmanız gerekiyor çünkü tekrar edip yeni bir gönderiye tüy dökmenin bir anlamı görmüyorum.
Peki bu sefer neye odaklanmalıyız?
iOS 9'da Çoklu Görev
Sanırım çoklu görev, başlamak için iyi bir yer olurdu, sadece onu aradan çıkarmak ve Android geliştiricilerinin tüm gönderiyi kaydırmak zorunda kalmadan yıllardır sahip olduğumuz birkaç küçümseyici yorumu yazmasına izin vermek için.
Apple, iOS9'a üç farklı çoklu görev modu ekledi:
- Bölünmüş görünüm
- kaydır
- Resim içinde resim (PiP)
Bölünmüş görünüm tanıdık bir kavramdır. Her iki uygulama da Windows 8.x ve bazı Android tabanlı tabletlerde (Samsung) olduğu gibi yan yana var olur. Kullanıcılar, örneğin tarayıcının yanına bir Skype şeridi yerleştirerek uygulamaları sürükleyebilir ve yarı pencerelerinin boyutunu ayarlayabilir.
Kaydırarak Bölünmüş Görünüm'e benzer, ancak ikinci uygulamayı ekranın sağ tarafında kullanıcı tarafından çağrılan bir kaplamada görüntüleyerek kullanıcının bir uygulamayı hızlı bir şekilde seçmesine ve onunla etkileşime girmesine olanak tanır. Uygulamalar, Android 4.x'teki uygulama değiştiriciye benzer şekilde dikey bir şerit halinde görüntülenir.
Genellikle video için kullanılan resim içinde resim, kullanıcıların bir uygulamayı küçük bir çerçevede görüntülemesine olanak tanır. Örneğin, bir TV programı izliyorsanız ve bir Skype mesajı alıyorsanız, videoyu bir PiP çerçevesinde tutarken yanıt verebilirsiniz.
Üç modun tümü aynı anda kullanılabilir, böylece iPad'iniz iki uygulamayı bölünmüş görünümde görüntülerken bir PiP çerçevesine sahip olabilirsiniz.
Apple, geliştiricileri, belirli bir nedenleri olmadıkça, kaydırmalı ve bölünmüş görünümü benimsemeye çağırıyor. Oyunlar gibi kamera uygulamaları ve tam cihaz uygulamaları istisna olarak listelenir. PiP'e gelince, video uygulamaları için tasarlanmıştır ve bir video uygulamanız olsa bile devre dışı bırakmak mümkündür, ancak PiP'yi desteklemek gerekli değildir.
Ayrıca, Xcode 7'deki her iOS uygulama şablonunun artık kaydırma ve bölme görünümünü desteklemek için önceden yapılandırıldığını da belirtmeliyim. Başka bir uyarı daha var: Bölünmüş görünüm çoğu iPad'de desteklenmez. Aslında, yalnızca iPad Air 2 ve iPad Pro'da bulunurken, kaydırma özelliği iPad Mini 2 ve Mini 3 ile birlikte birinci nesil Air'e geliyor.
iOS geliştiricileri için baş ağrısına neden olabilecek bir diğer konu ise düzen ve ölçeklemedir. Şimdiye kadarki tüm iPad'ler 4:3 ekran özelliğine sahipti, bu nedenle tasarımcılar 4:3 en-boy tuval üzerinde çalışmaya alışkın. Tüm eski uygulamalar bölünmüş görünümde doğru görünecek mi? Bir dizi faktöre bağlıdır, bu nedenle bu noktada cevap vermek küstahça olacaktır. Ancak, kemerinizin altında çok sayıda iPad uygulamanız varsa akılda tutulması gereken bir şey.
Apple, yeni çoklu görev modları hakkında gerekli bilgileri zaten yayınladı, bu nedenle ayrıntılar için kesinlikle resmi iOS Geliştirici Kitaplığı'na göz atmalısınız.
iOS 9.1 ve 9.2 Beta, Pazar Kabulü
Apple, yaklaşık bir ay önce iOS 9.1'i piyasaya sürdü ve iOS 9.2 beta, Apple'ın Beta Yazılım Programı aracılığıyla zaten indirilebilir. Her iki sürüm de küçük güncellemelerdir.
Aslında iOS 9.1, şimdiye kadarki üçüncü iOS 9 güncellemesiydi. Unicode 7 ve 8 desteği ile birlikte bir dizi yeni emojiyi (tek boynuzlu at dahil) tanıttı. Xcode, 7.1 sürümüne ulaştı ve bazı Apple TV bileşenleri de güncellendi. Video kaydını durdurmak için cihazın ne zaman indirildiğini anlamak için sensör bilgilerine dokunan canlı fotoğraflara güncelleme gibi küçük kamera ayarları da uygulandı.
iOS 9.2 beta sürümü yaklaşık bir haftadır mevcut ve bu da başka bir artımlı güncelleme. Safari'de bazı değişiklikler içeriyor, Siri'ye Arapça desteği ekliyor ve AT&T'nin NumberSync sistemi için destek içeriyor. Geliştirici açısından çok önemli bir şey yok.
iOS 9'un piyasaya sürülmesinden birkaç hafta sonra Apple, yeni mobil işletim sisteminin şimdiye kadar herhangi bir iOS sürümünün en hızlı benimsenme oranını gösterdiğini söyledi. Eylül ayının sonlarına doğru, iOS cihazlarının yüzde 50'sinden fazlası iOS 9'a güncellendi. Bununla birlikte, birçok eski cihaz güncellemeyi almayacak, ancak son dört yılda bir iPhone veya iPad satın alan tüm kullanıcıların sorun yaşamaması gerekiyor. Eski güzel iPhone 4 ve birinci nesil iPad kullanıcıları iOS 9 almayacak.
Hızlı benimseme bir Apple kozu olmaya devam ediyor. Google, Android'in yeni bir sürümünü yayınladığında, donanım ortaklarının cihazları için güncellemeler yayınlaması genellikle aylar alır ve küçük markaların birçok cihazı güncellenmez.
WatchOS 2 Tüketiciye Özgü İyileştirmeler Getiriyor
iOS 9.x artımlı, evrimsel bir güncelleme olarak görülebilirken, WatchOS 2 neredeyse derinlemesine bir güncelleme değildir. Yeni işletim sistemi, Apple Watch'un çok daha fazlasını yapmasına izin vererek geliştiriciler için yeni olanaklar yaratıyor. Ancak, hayal gücünün herhangi bir uzantısı ile bir oyun değiştirici değil.
Değişikliklerin çoğu tüketici odaklıdır, bu nedenle WatchOS 2 çok sayıda uygulama güncellemesi içerir. Örneğin, saat artık Facebook Messenger aracılığıyla metinleri ve ses dosyalarını göndermek için kullanılabilir; iTranslate, kullanıcıların konuşmaları hızlı bir şekilde çevirmesine olanak tanırken, yeni Airstrip uygulaması bir sağlık aracıdır. Siri desteği, kullanıcıların hava durumunu ve randevuları kontrol etmesine olanak tanıyan yeni bir Zaman Yolculuğu özelliğiyle birlikte genişletildi. Müzik arayüzü yeniden tasarlandı. Kullanıcılar artık sesli dikte ile e-postalara cevap verebilir ve yatma zamanı geldiğinde saat Komidin Moduna alınabilir.
Apple Watch artık bir iPhone olmadan WiFi ağlarına bağlanıyor; bir ipe ihtiyacı yoktur. Google bu özelliği birkaç ay önce Android Wear'da uygulamaya koydu, bu nedenle Apple'ın da eklemesi şaşırtıcı değil.
Apple ayrıca bir dizi yeni saat kadranıyla (ve yeniden tasarlananlarla), ek Komplikasyonlarla ve bunları özelleştirmenin ve düzenlemenin yeni yollarıyla estetiği düzeltti. Ekranı 70 saniyeye kadar daha uzun süre canlı tutacak yeni görüntü ayarları.
Dürüst olmak gerekirse, bu güncellemelerin çoğunu çok heyecan verici bulmuyorum ve bunlardan birkaçı düpedüz hile olarak tanımlanabilir.
Geliştiriciler için WatchOS 2
Güncelleme tüketicilere pek çok yeni özellik getirmese de geliştiriciler için yeni olanaklar sunacak. Büyük haber, WatchOS 2'nin daha fazla sensöre ve diğer donanım bileşenlerine erişim sağlamasıdır.
Geliştiriciler artık Digital Crown'u yakınlaştırmadan çok daha fazlası için kullanabilecekler; taç, içerik, bildirimler vb. arasında gezinmek için kullanılabilir. Sorun şu ki, çok az uygulama bu yeni taç özelliklerinden yararlanacak; destekleyecek şekilde güncellenmeleri biraz zaman alacaktır. Öte yandan, çeşitli bileşenlere daha derin erişim sağlamanın amacı, geliştiricileri Apple Watch için yerel uygulamalar oluşturmaya zorlamak.

Yeni dijital kurma kolu kontrollerine ek olarak, üçüncü taraf uygulamalar da mikrofona ve ivmeölçere erişebilir.
Peki ya komplikasyonlar? Geliştirici açısından bakıldığında, yeni komplikasyonlar oluşturma, yönetme ve özelleştirme yeteneği en büyük güncellemelerden biri olabilir. Yeni ClockKit çerçevesi ClockKit.framework
, Apple Watch uygulamalarıyla ilişkili komplikasyonları yönetmek için kullanılır. Çerçeve, geliştiricilerin Komplikasyonlar için çeşitli veri kaynaklarını kullanmasına ve ardından uygulama ile iyi bir eşleşme sağlamak için görsel görünümü değiştirmesine olanak tanır. Her şey farklı ClockKit.framework
sınıfları kullanılarak yapılır ve ek ayrıntılar için resmi Apple ClockKit çerçeve referansına göz atabilirsiniz.
Bu değişiklikler kulağa çok büyük bir şey gibi gelmeyebilir, ancak uzun vadede kullanıcıların Watch OS cihazlarıyla etkileşim şeklini değiştirebilirler. Ayrıca yeni kullanım senaryoları oluşturabilir ve daha fazla geliştiriciyi platform için yerel uygulamalar oluşturmaya motive edebilirler.
Yeni WatchOS Mimarisi
WatchOS 2'deki değişiklikler derinlemesine değil. Apple, WatchOS mimarisini elden geçirdi, ancak iyi haber şu ki, değişiklikler geliştiriciler için çok fazla sorun yaratmamalı.
WatchOS'un ilk enkarnasyonunda, WatchKit uzantısı kullanıcının iPhone'unda çalışıyordu, ancak WatchOS 2'de Apple Watch'ta çalışıyor. Apple, uzantıyı saate taşımanın, Watch uygulaması ile uzantı arasındaki iletişimi "çok daha hızlı" hale getirdiğini ve kullanıcının iPhone'u kullanılamadığında uygulamanın çalışmasına izin verdiğini söylüyor. Daha önce bahsettiğim bağlı olmayan WiFi erişimini hatırlıyor musunuz? Pekala, bu mümkün kılan şeylerden biri. Genişletilmiş komplikasyon işlevselliği için de önemlidir.
WatchKit uzantısının Apple Watch'a taşınması, işlevselliğini etkilemez. Apple, Watch uygulaması ile WatchKit uzantısı arasındaki "işbölümünün" WatchOS 2'de değişmeden kaldığını belirtiyor.
Uygulama hala, uygulamanın bilgi sunmak için kullandığı ekranları tanımlayan storyboard'ları içerirken, WatchKit uzantısı söz konusu ekranları yönetmek için WKInterfaceController
alt sınıflarını kullanır. Tüm etkileşimler hala WatchKit çerçevesi tarafından yönetilmektedir.
Apple, mevcut WatchKit uzantı kodunun çoğu zaman WatchOS 2'de çalışması gerektiğine dikkat çekiyor. Ancak, WatchKit uzantılarını saate taşıma kararı, uygulamaların tasarım şeklini değiştirecek. Uzantılar, iOS SDK yerine WatchOS SDK çerçeveleri kullanılarak uygulanacaktır. Ancak, WatchOS çerçevelerinde desteklenmeyen özellikler için geliştiricilerin yine de iOS uygulamasına güvenmeleri gerekecek. Bu aynı zamanda verilerin genellikle Apple saatinde depolandığı anlamına gelir, ancak uygulamanın bir iOS cihazındaki yardımcı uygulamadan bazı verilere ihtiyacı olması durumunda, bunları kablosuz olarak alacak ve Apple Watch'a aktaracaktır. Geliştiriciler, iOS uygulamasıyla dosya alışverişi yapmak için paylaşılan bir grup kapsayıcısı kullanamaz.
WatchOS 2'ye Geçiş
Apple, geliştiricilerin zahmete değmeyeceğine karar vermesi durumunda birçok özelliğin kullanılamayacağını belirtse de, geliştiricilerin henüz WatchOS 2'ye geçiş yapmak zorunda olmadıklarını da belirtmekte fayda var . Yukarıda ana hatları verilen bazı mimari değişiklikler gerekli olabilir, ancak bazı senaryolarda çalışma karşılığını verebilir.
Apple, geliştiricilerin mevcut bir uygulamayı WatchOS 2'ye geçirmenin zahmete değip değmeyeceğine karar vermeden önce sormaları gereken üç temel soruya işaret ediyor.
- Geliştiricinin daha önceki Apple Watch sürümlerini desteklemesi gerekiyor mu?
- Uygulama, büyük ölçüde iCloud teknolojilerine güveniyor mu?
- Saat uygulaması, eşlik eden iOS uygulamasından gelen verilere mi dayanıyor?
Aynı iOS uygulama paketini kullanarak bir Apple Watch uygulamasını WatchOS 1 ve WatchOS 2 için iki sürüm halinde sunmak mümkündür. Mimari değişikliklerin bir sonucu olarak, WatchOS 2 uygulaması ayrı bir yürütülebilir dosyada yeniden derlenmelidir. Apple, kod paylaşmanın tamamen ayrı iki uygulamaya sahip olmaktan daha fazla çaba gerektirebileceğini ve daha fazla karmaşıklık getirebileceğini belirtiyor.
WatchOS 2'deki WatchKit uzantısı Apple Watch'ta çalıştığından, artık iCloud teknolojilerine doğrudan erişimi yoktur. iCloud ile ilgili tüm işlemler, iOS yardımcı uygulaması tarafından gerçekleştirilmelidir. Veriler daha sonra kablosuz olarak WatchKit uzantısına gönderilir, bu nedenle geliştiricilerin muhtemelen iki cihaz arasında verileri yönetme ve eşitleme şeklini değiştirmeleri gerekecektir.
Yeni mimari nedeniyle, iOS tamamlayıcı uygulamasıyla iletişim de değiştirildi. Uygulamanın iOS uygulamasından veriye ihtiyacı olması durumunda, geliştiricilerin gerekli dosyaları iOS cihazından WatchOS cihazına açıkça aktarması gerekir. Veriler her iki konumda da yerel olarak yönetilmelidir ve geliştiricilerin Apple Watch'taki verilerin otomatik olarak yedeklenmediğini akıllarında tutmaları gerekir. Yedeklenmesi için iOS cihazına geri gönderilmesi gerekir.
Sarmak
Birkaç gönderide iOS 9'u ele aldık, bu yüzden bu sefer yeni çoklu görev yeteneklerine ve betalara odaklanmaya karar verdim. Apple'ın harika eleştiriler alan iPad Pro'yu başlatma kararı nedeniyle çoklu görev yönünü ilginç buluyorum.
iPad ve iPad mini'nin aksine Pro versiyonu daha iddialı. Eski güzel 9.7 inç ve 7.9 inç iPad'ler esas olarak içerik tüketimi için kullanılırken, içerik tüketimi ve içerik oluşturma için tasarlanmıştır. Gelişmiş çoklu görev, "profesyonel" hedefleri olan bir ürün için hayati önem taşır. IMDB'ye göz atarken veya ara sıra oyun oynarken harika çoklu görev desteğine ihtiyacınız yok, ancak birkaç belgeyi düzenlemeniz, bazı eskizleri ve Skype'ı aynı anda düzenlemeniz gerekiyorsa, birinci sınıf çoklu görev desteği bir zorunluluktur.
Apple, iPad Pro ile iOS için yeni bir niş oluşturmaya çalışıyor. İşletim sistemi iş için kullanılabilecek kadar olgun ve yeni ARM tabanlı A9X işlemci ile Apple, onunla birlikte gidecek güçlü bir donanım platformuna sahip. Elbette Apple bu alanda yalnız değil ve iPad Pro'nun Microsoft'un Surface Pro tabletinden “ilham aldığı” iddia edilebilir. Apple, mobil işletim sistemini iPad Pro için kullanmaya karar verdi ve OS X'i MacBook'lara ayırdı. Microsoft, Windows RT'yi (ARM için Windows) bıraktı ve ARM işlemcilerinden uzaklaştı.
Bununla birlikte, Intel'in en yeni 14nm Core M ve Cherry Trail işlemcileri son derece güç verimli ve bunları birkaç giriş seviyesinden orta seviye Windows sistemlerinde (150 ila 500 $) deneme şansım oldu. Söyleyebileceğim tek şey: Onları hafife almayın . Yeni Intel donanımı mükemmel, Windows 10 karışık bir çanta (en azından bence), ancak fiyatlandırma son derece rekabetçi olacak.
WatchOS 2'ye gelince, iOS 9.x'e kıyasla biraz daha büyük bir güncelleme. Ancak Apple'ın oyunun bu kadar erken safhalarında arkasındaki temel mimariyi yeniden tasarlama kararına şaşırdım. Apple Watch oldukça uzun bir süredir çalışıyor ve Android Wear saatler tarafından birkaç çeyrek geride kaldı.
Aslında Apple'ın giyilebilir işletim sisteminin ikinci yinelemesinde mimari değişiklikler beklemiyordum. Belki gerçekçi olmayan beklentilerim var, ancak 600 milyar dolarlık bir teknoloji devi rakiplerinden aylar sonra bir ürün çıkardığında, birkaç ay sonra çizim tahtasına geri dönmesini beklemiyorum. Bağlı olmayan WiFi, Apple Watch'ta çalışan WatchKit uzantısı? WatchOS 1'e dahil edilmiş olabilirler ve olmalıydılar.
Belki de bu yüzden birçok üçüncü taraf uygulaması Apple Watch piyasaya çıktığında iyi performans göstermedi.