WWDC20: ResearchKit Yenilikleri

Sağlık ile alakalı daha efektif uygulamalar geliştirmenizi sağlayan ResearchKit, WWDC 2020 konferansında büyük yetenekler kazandı.

Can Balkaya
TurkishKit
6 min readJun 26, 2020

--

Merhaba sevgili TurkishKit okuyucuları! 🖐🏼 Bu yazımızda WWDC20 konferansında ResearchKit’e gelen yeni özelliklerden bahsedeceğiz. Hazırsanız başlayalım! 🙌🏿

WWDC 2020 Haftasını Yakından Takip Edin!

TurkishKit Medium sayfamızı takip ederek WWDC 2020 haftası boyunca tanıtılan yeniliklerden anında haberdar olun. WWDC 2020 serimizi keşfetmek için aşağıdaki linke tıklamanız yeterli.

Bu konu ile alakalı daha fazla bilgi almak için aşağıdaki bağlantıya tıklayabilirsiniz:

Onboarding Updates

Onboarding sayfaları kullanıcıya uygulamada nelerle etkileşime girebileceğini anlatmak için güzel araçlardır. Sonuçta, çalışmanın tam olarak ne olduğunu ve katılımcıların katılmaya karar verirlerse ne beklemeleri gerektiğini iletmek için son derece önemlidir.

Görüntülemek istediğiniz içerik üzerinde tam kontrole sahip olabilmeniz için özel metin ve resimleri destekleyecek talimat adımları üzerinde öğrenmeye doğru ilerleyelim.

Yukarıdaki adımı oluşturmak için kodlamaya başlayalım. ResearchKit’i “import” ettikten sonra, yapacağımız ilk şey talimatlar adımını başlatmak ve “unique indetifer” aktarmaktır.

Başlangıç adımımızın ikinci adımlarını bir talimat adımı kullanarak tekrarlıyoruz, ancak bu sefer katılımcılarınızı daha fazla eğitmek için son derece kullanışlı bir özellik olan “body” öğelerini de ekliyoruz.

Yine bu sayfanın nasıl kodlandığına bir bakalım. Tahmin edeceğiniz üzere, bu sayfanın kodları öncekine oldukça benzer. İlk önce ORKInstructionStep türündeki değerimizi başlatıyor ve “unique indetifer”ımızı yazıyoruz.

Daha sonra, bir görüntü ilettiğimizden ve bodyItemStyle öğemizi “.image” olarak ayarladığımızdan emin olarak ilk gövde (body) öğemizi oluştururuz.

Yapılması gereken son şey, yeni oluşturulan bodyItem elemanını InstructionStep üzerinde bulunan bodyItems dizisine eklemektir.

Şimdi WebView adımımızda yapılan bir geliştirmeye bakalım. Daha önce kullanıcıya onay belgesine genel bir bakış sunmak ve bunun için imzayı toplamak iki farklı adımla ele alındı.

Ama artık yeni gelen “In-line signature” özelliği ile birlikte bu iki adımı tek bir adımda birleştirebiliyoruz.

Hadi bu sayfanın da kodlarına bakalım.Yapmamız gereken ilk şey, bir tanımlayıcıdan ve görüntülemek istediğiniz html içeriğinden geçen ORKWebViewStep elemanını başlatmaktır.

Sonrasında showSignatureAfterContent değerini true değerine eşitlemeliyiz.

Bu yıl ile birlikte adımların arasında talep izni adımını da sunabiliyoruz. Daha önce sağlık verilerine erişim istemek istiyorsanız, bunu ResearchKit akışının dışında yapmanız gerekirdi. Şimdi tek yapmanız gereken, istek izni adımını başlatmak ve erişmek istediğiniz sağlık hizmet türlerini talep eden sayfayı yapacağız.

ORKRequestPermissionStep elemanını oluşturmak için koda bakalım. Bir dizi HKSampleTypes oluşturarak başlıyoruz ve bunlar, doğru erişim istediğiniz türleri temsil ediyor.

Daha sonra ORKHealthKitPermissionType elemanını, yukarıda oluşturulan hkTypesToWrite ve hkTypesToRead değerlerini ilettiğimizden emin olarak başlatacağız.

Son olarak, ORKHealthKitPermissionStep elemanını başlatalım ve şu anda içinde sadece ORKHealthKitPermissionType elemanı olan bir dizi izin türünü iletelim.

Survey Enhancements

Herhangi bir soru göstermeden önce kullanıcıya her zaman anketin amacının ne olduğu hakkında bir fikir vermek gerekir. Ancak bu sefer, tümü ResearchKit tarafından işlenen ekrana hizalanmış bir simge görüntüsü de sağlayacağız.

Yeni katılım anketinin ikinci adımında, katılımcı hakkında temel bilgileri toplamak için bir ORKFormStep kullanıyoruz.

Üçüncü adımda, buradaki örnekte olduğu gibi ölçek tabanlı soruları sunmaya yardımcı olabilecek yeni SESAnswerFormat elemanını oluşturuyoruz, burada kullanıcıdan sağlıklarının mevcut durumunu en iyi tasvir ettiklerini düşündükleri seçeneği seçmelerini istiyoruz.

Şimdi bu ekranı kodlama zamanı. Yaptığımız ilk şey, SESAnswerFormat elemanını oluşturmak ve burada görüldüğü gibi üst basamak metnini ve alt basamak metnini iletmektir.

Yapmamız gereken son şey, ORKFormItem elemanını oluşturmak ve yukarıda oluşturulan SESAnswerFormat elemanını içerisinde kullanmak.

Bir sonraki adımda, katılımcıların mevcut stres seviyesi ve ağrı seviyesi hakkında bilgi almak için sürekli bir ölçek cevap formatını kullanıyoruz.

Bu, katılımcıların kendilerine sunulan soruları cevaplamak istemediklerinde “Bilmiyorum” düğmesini seçmelerine olanak tanır.

Bunları nasıl yapabileceğimize bakalım. İlk olarak ORKScaleAnswerFormat elemanını oluşturalım.

Sonra shouldShowDontKnowButton özniteliğini true olarak ayarlayalım.

Sonra customDontKnowButtonText elemanını “Prefer not to answer” olarak ayarlayalım.

Yapmamız gereken son şey ORKFormItem elemanını başlatmak ve yukarıda oluşturulan ölçek cevap formatında geçmek.

Ankette herhangi bir ek toplamak için ORKTextAnswerFormat kullanıyoruz. Kullanıcıların sayfanın içerisinde yazdıklarının ne kadar sınırlı olmaları gerektiğini anlamaları için karakter satırını gösteren bir yazı ve yazılan bütün yazıların silinmesini sağlayan bir buton geliştirilmiş.

Şimdi bunların kodlanarak nasıl yapıldığına bakalım. Önce bir ORKTextAnswerFormat öğesini oluştururuz.

Ardından, yanıt biçiminde multipleLines değerini true olarak ayarlamak gibi bazı özellikleri ayarlamaya başlarız.

Son olarak, bir ORKQuesitonStep elemanı oluşturalım.

Katılım anketinin sonunda katılımcıya yeni ORKReviewViewController elemanı sunulur. Burada kullanıcının girdiği bilgileri düzeltebilmesi için bir düzenleme butonu vardır.

Şimdi bu butonu kodlayarak nasıl yapabileceğimize bakalım. Öncelikle bir görevi oluşturmamız gerektiren ReviewViewController elemanını ve bu durumda bize didFinishWithReason yöntemiyle bize geri gönderilen taskViewController nesnesinden aldığımız bir sonuç nesnesini oluştururuz. Bu da didUpdateResult ve didSelectIncompleteCell yöntemlerini uygulamamızı gerektirir.

reviewTitle ve text değerlerini ayarladıktan sonra ilk ReviewViewController elemanımızı artık oluşturmuş durumdayız.

Bu konu ile alakalı daha fazla bilgi almak için aşağıdaki bağlantıya tıklayabilirsiniz:

Bu makalemizin de böylece sonuna geldik. Bu makalemizde ResearchKit’e gelen yeni özellikleri öğrendik. Keyifli öğrenmeler dilerim! 😋

Bizi daha yakından takip etmek istiyorsanız, sosyal medya hesaplarımıza aşağıdan ulaşabilirsiniz!

Twitter | Instagram | Facebook

--

--