iOS 9’a Giriş
Bu makalede, Xamarin.iOS geliştiricileri için iOS 9'da bulunan tüm yeni ve değiştirilmiş API'ler ve özellikler tanıtılır.
Apple, iOS 9'da çeşitli yeni API'ler ve hizmetlerin yanı sıra mevcut özelliklere yönelik birçok geliştirme ekledi.
3D Touch
iOS 9 ve i Telefon 6s ve i Telefon 6s Plus'ta yeni olan 3B Touch, iOS uygulamalarınıza basınca duyarlı hareketler ekler. 3D Touch ile i Telefon uygulaması artık yalnızca kullanıcının cihazın ekranına dokunduğunu söylemekle kalmadı, aynı zamanda kullanıcının ne kadar baskı uyguladığını algılayabilir ve farklı basınç düzeylerine yanıt verebilir.
3D Touch, uygulamanıza aşağıdaki özellikleri sağlar:
- Basınç Duyarlılığı - Uygulamalar artık kullanıcının ekrana ne kadar sert veya hafif dokunduğunu ölçebilir ve bu bilgilerden yararlanabilir. Örneğin, bir boyama uygulaması, kullanıcının ekrana ne kadar sert dokunduğuna bağlı olarak çizginin daha kalın veya ince olmasını sağlayabilir.
- Göz atma ve Açılan - Uygulamanız artık kullanıcının geçerli bağlamının dışına çıkmak zorunda kalmadan verileriyle etkileşim kurmasına izin verebilir. Ekrana sabit basarak ilgilendikleri öğeye göz atabilir (örneğin, bir iletinin önizlemesini izleyebilirler). Daha sert basarak, öğeye pop olabilir.
- Hızlı Eylemler - Kullanıcı masaüstü uygulamasındaki bir öğeye sağ tıkladığında açılan bağlam menüleri gibi Hızlı İşlemler'i düşünün. Hızlı İşlemler'i kullanarak, iOS cihazındaki Giriş ekranı simgesinden uygulamanızdaki işlevlere yaygın, hızlı ve kolay erişim kısayolları ekleyebilirsiniz.
Daha fazla bilgi edinmek için lütfen 3B Dokunmaya Giriş kılavuzumuza bakın.
Uygulama Aktarım Güvenliği
iOS 9'da yeni olan App Transport Security (ATS), İnternet kaynakları (uygulamanın arka uç sunucusu gibi) ile uygulamanız arasında güvenli bağlantıları zorlar. ATS, tüm internet iletişimlerinin güvenli bağlantı en iyi yöntemlerine uygun olmasını sağlayarak hassas bilgilerin doğrudan uygulamanız veya kullanmakta olduğu bir kitaplık aracılığıyla yanlışlıkla açıklanmasını önler.
iOS 9 ve OS X 10.11 (El Capitan) için oluşturulan uygulamalarda ATS varsayılan olarak etkinleştirildiğinden, NSUrl Bağlan ion, CFUrl veya NSUrlSession kullanan tüm bağlantılar ATS güvenlik gereksinimlerine tabi olacaktır. Bağlantılarınız bu gereksinimi karşılamıyorsa, bir özel durumla başarısız olur.
ATS hakkında daha fazla bilgi edinmek için lütfen App Transport Security kılavuzumuza bakın.
iPad için Çoklu Görev Gerçekleştirme
iOS 9 ile Apple, belirli iPad donanımlarında aynı anda iki uygulama çalıştırmak için çoklu görev desteği ekledi. Sonuç olarak, Xamarin.iOS uygulamalarınız artık herhangi bir zamanda çalışan tek uygulama olduklarını veya cihazın tam ekranına veya kaynaklarına erişebildiklerini varsayabilir.
iPad için çoklu görev, aşağıdaki özellikler aracılığıyla desteklenir:
- Slide Over - Kullanıcının, şu anda çalışmakta olan ana uygulamanın yaklaşık %25'ini kapsayan bir slayt çıkışı panelinde (dil yönüne göre ekranın sağ veya sol tarafında) ikinci bir iOS uygulamasını geçici olarak çalıştırmasına olanak tanır. Slide Over yalnızca iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 veya iPad Mini 4'te kullanılabilir.
- Bölünmüş Görünüm - Desteklenen iPad donanımlarında (yalnızca iPad Air 2, iPad Mini 4 ve iPad Pro), kullanıcı ikinci bir uygulama seçebilir ve şu anda çalışan uygulamayla bölünmüş ekran modunda yan yana çalıştırabilir. Kullanıcı, her uygulamanın kapsadığını ana ekranın yüzdesini denetleyebiliyor.
- Resimdeki Resim - Video içeriğini yürüten uygulamalar için, video artık iOS cihazında çalışmakta olan diğer uygulamaların üzerinde kayan taşınabilir ve yeniden boyutlandırılabilir bir pencerede oynatılabilir. Kullanıcı, bu pencerenin boyutu ve konumu üzerinde tam denetime sahiptir. Resim'deki resim yalnızca iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 veya iPad Mini 4'te kullanılabilir.
iOS 9'un yeni çoklu görev özellikleri hakkında daha fazla bilgi edinmek için lütfen iPad için çoklu görev yapma kılavuzumuza bakın.
Yeni Kişiler ve Kişiler Kullanıcı Arabirimi Çerçeveleri
iOS 9'un kullanıma sunulmasıyla birlikte Apple, iOS 8 ve öncesi tarafından kullanılan mevcut Adres Defteri ve Adres Defteri kullanıcı arabirimi çerçevelerinin yerini alan Kişiler ve KişilerUI adlı iki yeni çerçeve yayınladı.
Bu yeni, nesne odaklı çerçeveler aşağıdakileri sağlar:
- Kişiler – Kullanıcının kişi bilgilerine Xamarin.iOS erişimi sağlar. Çoğu uygulama yalnızca salt okunur erişim gerektirdiği için, bu çerçeve iş parçacığı güvenli, salt okunur erişim için iyileştirilmiştir.
- ContactsUI – iOS cihazlarında kişileri görüntülemek, düzenlemek, seçmek ve oluşturmak için Xamarin.iOS kullanıcı arabirimi öğeleri sağlar.
Daha fazla bilgi için Kişiler ve Kişiler kullanıcı arabirimi belgelerimize bakın.
Yeni Arama API'leri
Xamarin.iOS uygulamanızın içindeki bilgilere erişmenin harika yeni yollarını sağlamak için iOS 9'da arama genişletildi. Yeni Arama API'lerini kullanarak, Uygulamanızın içeriğini Spotlight ve Safari arama sonuçları, İletim ve Siri Anımsatıcıları ve Öneriler aracılığıyla aranabilir hale getirebilirsiniz. Bu, kullanıcıların uygulamanızın içindeki etkinliklere ve bilgilere hızlı bir şekilde erişmesini sağlar.
Ayrıca, yeni Arama API'leri, önceki arama uygulama deneyimi olmadan aramanın uygulamanızda tümleştirilmesini kolaylaştırır. Bu nedenle Apple, bir iOS 9 uygulamasının içeriğinin Uygulama Arama kullanılarak evrensel olarak aranabilir olmasını sağlamanın genellikle birkaç saat sürdüğünü iddia eder.
Daha fazla bilgi için lütfen Arama Geliştirmeleri belgelerimize bakın.
Yeni Yığın Görünümü
Yığın Görünümü denetimi (UIStackView , iOS cihazının yönlendirmesine ve ekran boyutuna dinamik olarak yanıt veren bir alt görünüm yığınını (yatay veya dikey olarak) yönetmek için Otomatik Düzen ve Boyut Sınıflarının gücünden yararlanıyor.
Stack View denetimi kullanıldığında, kullanıcı arabirimini düzenlerken gereken çalışma miktarı büyük ölçüde azalır. Yığın Görünümü'ne eklenen tüm alt görünümlerin düzeni, eksen, dağıtım, hizalama ve aralık gibi geliştirici tanımlı özelliklere göre otomatik olarak yönetilir.
Daha fazla bilgi için lütfen Stack View'a Giriş belgelerimize bakın.
Koleksiyon Görünümü Değişiklikleri
iOS 9'da Koleksiyon Görünümü (UICollectionView artık yeni bir varsayılan hareket tanıyıcı ve birkaç yeni destekleyici yöntem ekleyerek öğelerin kutu dışına sürüklenerek yeniden sıralanmasını destekliyor.
Bu yeni yöntemleri kullanarak Koleksiyon Görünümünüzde yeniden sıralamaya sürüklemeyi kolayca uygulayabilir ve yeniden sıralama işleminin herhangi bir aşamasında öğelerin görünümünü özelleştirme seçeneğine sahip olabilirsiniz.
iOS 9'un Koleksiyon Görünümü değişiklikleri hakkında daha fazla bilgi edinmek için lütfen Koleksiyon Görünümü Değişiklikleri kılavuzumuza bakın.
Oyun Geliştirmeleri
iOS 9 ile Apple, Oyun API'lerinde Xamarin.iOS uygulamanızda oyun grafiklerini ve seslerini uygulamayı kolaylaştıran çeşitli teknolojik geliştirmeler yaptı. Bunlar hem üst düzey çerçeveler aracılığıyla geliştirme kolaylığı hem de düşük düzey geliştirmelerle gelişmiş hız ve grafik becerileri için iOS cihazının GPU'sunun gücünden yararlanmayı içerir.
Buna GameplayKit, ReplayKit, Model G/Ç, MetalKit ve Metal Performans Gölgelendiricilerinin yanı sıra Metal, SceneKit ve SpriteKit'in yeni, gelişmiş özellikleri dahildir.
Daha fazla bilgi için lütfen Oyun Geliştirmeleri belgelerimize bakın.
HomeKit Framework Değişiklikleri
iOS 8'de sunulan HomeKit çerçevesi, Xamarin.iOS uygulamasından çeşitli HomeKit özellikli aksesuarları (otomatik ışıklar, kapı kilitleri ve garaj kapı açıcıları gibi) ayarlama ve denetleme olanağı sağlar. HomeKit aksesuarları kurulumu ve yapılandırılması kolay olmasının yanı sıra, konuşulan Siri komutları aracılığıyla kontrol edilebilir.
iOS 9'da Apple kurulumu kolaylaştırdı, desteklenen aksesuar türlerini genişletti ve daha fazla aksesuar etkileşimi sağladı (örneğin, bir aksesuarı iCloud aracılığıyla uzaktan kontrol etme).
Daha fazla bilgi için HomeKit'e Giriş ve Apple'ın HomeKit belgelerine bakın.
İletim Çerçevesi Değişiklikleri
İletim (Süreklilik olarak da bilinir), Apple tarafından iOS 8 ve OS X Yosemite'da (10.10) kullanıcının cihazlarından birinde (iOS veya Mac) bir etkinlik başlatmasının ve aynı etkinliği başka bir cihazda (kullanıcının iCloud Hesabı tarafından tanımlandığı şekilde) sürdürmesinin bir yolu olarak tanıtıldı.
İletim, iOS 9'da yeni, gelişmiş Arama özelliklerini de destekleyecek şekilde genişletildi. Daha fazla bilgi için lütfen Arama Geliştirmeleri belgelerimize bakın. İletimi kullanma hakkında daha fazla bilgi için lütfen İletim'e Giriş belgelerimize bakın.
Yeni Uzantı Noktaları
iOS 8'de Apple Uzantılar'ı kullanıma sundu: İşletim sistemi tarafından Bildirim Merkezi'nde, kullanıcı klavye istediğinde veya bir fotoğrafı düzenlerken olduğu gibi standart bağlamlarda sunulan kitaplıklar.
iOS 9 ile Apple, kullanım ilkelerini tanımlayan ve belirli bir alan içinde çalışmak için API'ler sağlayan birkaç yeni Uzantı Noktası sağlayarak Uzantı desteğini genişletiyor:
- Yeni Ses Birimi Uzantı Noktası – Diğer Ses Birimi konak uygulamalarında (GarageBand gibi) kullanılmak üzere ses efektleri, müzik aletleri, ses oluşturucular vb. sağlamak için bu Uzantı Noktasını kullanın. Bu Uzantı Noktası, App Store'da Ses Birimleri (ses eklentileri) satmanızı da sağlar.
- Yeni Dizin Bakım Uzantı Noktası — Uygulama yeniden başlatılmasına gerek kalmadan uygulama verilerinin yeniden dizine alınmasını desteklemek için bu Uzantı Noktasını kullanın.
- Yeni Ağ Uzantısı Noktaları (bunlar Apple'dan özel izin gerektirir):
- Uygulama Ara Sunucusu Sağlayıcısı Uzantısı — Özel bir saydam istemci tarafı ağ proxy'si uygulamak için bu Uzantı Noktasını kullanın.
- Filtre Veri Sağlayıcısı / Filtre Denetimi Sağlayıcısı Uzantısı - Cihazda dinamik ağ içeriği filtrelemesi uygulamak için bu Uzantı Noktalarını kullanın.
- Paket Tüneli Sağlayıcısı Uzantısı — Özel vpn tünel protokolü istemci tarafı uygulamak için bu Uzantı Noktasını kullanın.
- Yeni Safari Uzantı Noktaları:
- İçerik Engelleme Uzantısı — Kullanıcı web'e göz atarken görüntülenmeyecek engellenen içeriğin listesini tanımlamak için bu Uzantı Noktasını kullanın.
- Paylaşılan Bağlantılar Uzantısı — Uygulamanızın içeriğini Safari'nin Paylaşılan Bağlantılarında görüntülemeyi etkinleştirmek için bu Uzantı Noktasını kullanın.
Daha fazla bilgi için lütfen Uzantılara Giriş ve Apple'ın Uygulama Uzantısı Programlama Kılavuzu belgelerimize bakın.
Anahtarlık Geliştirmeleri
iOS 9'da Apple, Güvenli Kapanım ve daha fazla öğe koruma seçeneği için aşağıdaki gibi yeni bir şifreleme anahtarı türü sağlamak üzere Anahtar zincirini geliştirmiştir:
- Parmak izi veritabanı değiştirildiğinde Anahtarlık öğelerini geçersiz kılan yeni bir Touch ID kısıtlaması.
- Yalnızca Touch ID veya Geçiş Kodu ile Erişim Denetimi Listesi girdileri oluşturmaya izin veren yeni kısıtlamalar.
- Kimlik doğrulamasını çağrılardan
SecItem
ayrı olarak çağırmanızı sağlayan yeni bir kimlik doğrulama bağlamı. - Uygulama tarafından sağlanan anahtarlık öğesi şifrelemesi için Erişim Denetim Listesi entropisi (Uygulama Parolası seçeneğini kullanarak).
- Güvenli kapanım içinde anahtar oluşturma ve kullanma desteği (özniteliği aracılığıyla
kSecAttrTokenIDSecureEnclave
).
Daha fazla bilgi için bkz . Xamarin.iOS'ta Touch ID ve Face ID.
Sağdan Sola Dil Desteği
iOS 9'da Apple, sağdan sola diller için tam destek sağlayarak çevrilmiş bir kullanıcı arabirimi sunmayı her zamankinden daha kolay hale getirmiştir. Bunlar arasında aşağıdakiler yer alır:
- Standart UIKit denetimleri, iOS cihazlarının yerel ayarına ve dil ayarlarına göre otomatik olarak sağdan sola çevrilir.
- UIView sınıfı, sağdan sola çevrildiğinde belirli bir görünümün nasıl görüneceğini tanımlamanıza olanak sağlayan öznitelikler sağlar.
- UIImage sınıfının FlipsForRightToLeftLayoutDirection özelliğini kullanarak bir görüntüyü program aracılığıyla çevirme özelliği.
Daha fazla bilgi için lütfen Apple'ın Sağdan Sola Dilleri Destekleme belgelerine bakın.
Ek Çerçeve Değişiklikleri
Yukarıda ele aldığımız önemli değişikliklere ek olarak, Apple iOS 9 için aşağıdakiler de dahil olmak üzere çeşitli mevcut çerçevelerde değişiklikler ve iyileştirmeler yapmıştır:
- AV Foundation Framework
- AVKit Framework
- CloudKit Framework
- Foundation Framework
- İletim Çerçevesi
- HealthKit Framework
- HomeKit Framework
- Yerel Kimlik Doğrulama Çerçevesi
- MapKit Framework
- PassKit Framework
- Safari Services Framework
- UIKit Framework
Daha fazla bilgi için lütfen Ek iOS 9 Framework Değişiklikleri belgelerimize bakın.
Kullanım dışı API'ler ve İşlevler
Apple, iOS 9'da aşağıdaki API'leri ve işlevleri kullanım dışı bırakmıştır:
- Adres Defteri ve Adres Defteri kullanıcı arabirimi - Bu API'lerin yerini Kişi ve kişi kullanıcı arabirimi çerçeveleri aldı. Daha fazla bilgi için Kişiler ve Kişiler kullanıcı arabirimi belgelerimize bakın.
- CBCentralManager -
RetrievePeripherals
iOS 9'da sınıfınCBCentralManager
veRetrieveConnectedPeripherals
yöntemleri kaldırıldı. Bu yöntemlerin çağrılması, bir aksesuar eşlenirken veya uygulama başlatıldığında uygulamanın kilitlenmesine neden olur. - FetchAllChanges -
FetchAllChanges
CKFetchRecordChangesOperation
Sınıfının sınıfı kullanım dışı bırakıldı ve iOS 9'da kaldırılacak. - Medya Oynatıcı - Medya Oynatıcı çerçevesi iOS 9'da kullanım dışı bırakılmıştır. Bunun yerine AVKit veya AV Foundation API'lerini kullanın.
Belirli API kullanımdan kaldırmaların tam listesi için Apple'ın iOS 9.0 API Farkları belgelerine bakın.
İlişkili Bağlantılar
- 3B Dokunmaya Giriş
- Uygulama Aktarım Güvenliği
- iPad için Çoklu Görev Gerçekleştirme
- Kişiler ve Kişiler kullanıcı arabirimi
- Yeni Arama API'leri
- Yığın Görünümüne Giriş
- Koleksiyon Görünümü Değişiklikleri
- Oyun Geliştirmeleri
- HomeKit'e giriş
- İletim'e Giriş
- Ek iOS 9 Çerçeve Değişiklikleri
- Sorun giderme
- iOS 9.0'daki Yenilikler
- Xamarin.iOS uygulamalarınızı iOS9'a güncelleştirme (video)