Reklamı bağlayın

Keçən həftə Apple digər şeylər arasında təqdim etdi yeni Apple TV tvOS əməliyyat sistemi ilə. App Store-dan tətbiqlərin yeni qara qutuda quraşdırıla bilməsi, əlbəttə ki, tərtibatçıları çox sevindirdi.

Tərtibatçıların iki variantı var. Onlar Apple TV aparatına tam girişi olan yerli proqram yaza bilərlər. Mövcud SDK (proqramçılar üçün kitabxanalar dəsti) tərtibatçıların artıq iPhone, iPad-dən bildikləri ilə çox oxşardır və proqramlaşdırma dilləri eynidir - Objective-C və daha gənc Swift.

Ancaq daha sadə tətbiqlər üçün Apple tərtibatçılara TVML şəklində ikinci variantı - Televiziya İşarələmə Dilini təklif etdi. TVML adının şübhəli şəkildə HTML-yə bənzədiyini hiss edirsinizsə, haqlısınız. Bu, həqiqətən XML-ə əsaslanan və HTML-ə çox bənzəyən bir işarələmə dilidir, yalnız daha sadədir və daha sərt sintaksisə malikdir. Ancaq Netflix kimi proqramlar üçün tamamilə mükəmməldir. İstifadəçilər də bundan faydalanacaqlar, çünki TVML-nin sərtliyi multimedia proqramlarının eyni görünməsinə və işləməsinə səbəb olacaq.

İlk tətbiqə gedən yol

Beləliklə, etməli olduğum ilk şey Xcode inkişaf mühitinin yeni beta versiyasını yükləmək oldu (versiya 7.1 mövcuddur) burada). Bu, mənə tvOS SDK-ya giriş imkanı verdi və dördüncü nəsil Apple TV-ni hədəfləyən yeni layihəyə başlaya bildim. Tətbiq yalnız tvOS ola bilər və ya kod “universal” proqram yaratmaq üçün mövcud iOS proqramına əlavə edilə bilər – bu gün iPhone və iPad proqramlarına oxşar model.

Birinci problem: Xcode yalnız yerli proqram yaratmaq imkanı təklif edir. Ancaq mən çox tez sənədlərdə tərtibatçılara bu skeleti dəyişdirməyə və TVML üçün hazırlamağa kömək edəcək bir bölmə tapdım. Əsasən, bu, Swift-də bir neçə sətir koddur ki, sadəcə Apple TV-də tam ekran obyekti yaradır və artıq JavaScript-də yazılmış proqramın əsas hissəsini yükləyir.

İkinci problem: TVML proqramları həqiqətən veb səhifəyə çox bənzəyir və buna görə də bütün kodlar İnternetdən yüklənir. Tətbiqin özü əslində sadəcə "bootloader"dir, o, yalnız minimum kod və ən əsas qrafik elementləri (tətbiq simvolu və s.) ehtiva edir. Sonda mən əsas JavaScript kodunu uğurla proqrama birbaşa daxil etdim və Apple TV İnternetə qoşulmadıqda heç olmasa fərdi səhv mesajı göstərmək imkanı əldə etdim.

Üçüncü kiçik problem: iOS 9 və onunla birlikdə tvOS ciddi şəkildə tələb edir ki, İnternetə olan bütün əlaqə HTTPS vasitəsilə şifrələnsin. Bu, iOS 9-da bütün proqramlar üçün təqdim edilən xüsusiyyətdir və səbəb istifadəçi məxfiliyinə və məlumat təhlükəsizliyinə təzyiqdir. Beləliklə, veb serverdə SSL sertifikatı yerləşdirmək lazım olacaq. Onu ildə 5 dollara (120 kron) almaq olar və ya siz, məsələn, avtomatik olaraq və sərmayə qoymadan HTTPS-in qayğısına qalacaq CloudFlare xidmətindən istifadə edə bilərsiniz. İkinci seçim, tətbiq üçün bu məhdudiyyəti söndürməkdir, bu, hələlik mümkündür, lakin mən bunu qətiliklə tövsiyə etməzdim.

Bir neçə saatlıq sənədləri oxuduqdan sonra, hələ də bəzən kiçik səhvlər var, mən çox sadə, lakin işləyən bir proqram hazırladım. Orada məşhur "Salam Dünya" mətni və iki düymə göstərilirdi. Düyməni aktiv etmək və əslində bir şey etmək üçün iki saata yaxın vaxt sərf etdim. Ancaq səhərin erkən saatlarını nəzərə alaraq, yatmağa üstünlük verdim... və bu yaxşı bir şey idi.

Keçən gün məndə birbaşa Apple-dan hazır nümunə TVML tətbiqini yükləmək fikri yarandı. Axtardığımı kodda çox tez tapdım və düymə canlı və işləyirdi. Digər şeylər arasında mən İnternetdə tvOS dərsliyinin ilk iki hissəsini də kəşf etdim. Hər iki resurs çox kömək etdi, ona görə də yeni bir layihəyə başladım və ilk real tətbiqimə başladım.

İlk real tətbiq

Mən tamamilə sıfırdan başladım, ilk TVML səhifəsi. Üstünlük ondadır ki, Apple tərtibatçılar üçün sadəcə sənədlərdən kopyalanması lazım olan 18 hazır TVML şablonu hazırlamışdır. Bir şablonu redaktə etmək təxminən bir saat çəkdi, ilk növbədə mən hazır TVML-ni bütün lazımi məlumatlarla Apple TV-yə göndərmək üçün API-mizi hazırladığım üçün.

İkinci şablon cəmi 10 dəqiqə çəkdi. Mən iki JavaScript əlavə etdim - onlarda olan kodların əksəriyyəti birbaşa Apple-dan gəlir, ona görə də təkəri yenidən ixtira etmək nəyə lazımdır. Apple tövsiyə olunan məzmun yükləmə göstəricisi və mümkün xəta ekranı daxil olmaqla, TVML şablonlarının yüklənməsi və göstərilməsi ilə bağlı skriptlər hazırlamışdır.

İki saatdan az müddətdə çox çılpaq, lakin işlək PLAY.CZ tətbiqini bir araya gətirə bildim. O, radio stansiyalarının siyahısını göstərə bilər, onu janr üzrə süzgəcdən keçirə və radionu işə sala bilər. Bəli, bir çox şey proqramda deyil, lakin əsaslar işləyir.

[youtube id=”kLKvWC-rj7Q” width=”620″ hündürlük=”360″]

Üstünlüyü ondan ibarətdir ki, proqram əsasən veb saytın JavaScript ilə təchiz edilmiş xüsusi versiyasından başqa bir şey deyil və siz həmçinin xarici görünüşü dəyişdirmək üçün CSS-dən istifadə edə bilərsiniz.

Apple hələ də hazırlamaq üçün bir neçə şey tələb edir. Tətbiq simvolu bir deyil, iki - daha kiçik və daha böyükdür. Yenilik ondan ibarətdir ki, ikona sadə təsvir deyil, paralaks effekti ehtiva edir və 2-5 təbəqədən (fon, orta və ön planda obyektlər) ibarətdir. Tətbiqdəki bütün aktiv şəkillər eyni effekti ehtiva edə bilər.

Hər bir təbəqə əslində şəffaf fonda sadəcə bir şəkildir. Apple bu laylı şəkilləri tərtib etmək üçün öz tətbiqini hazırladı və tezliklə Adobe Photoshop üçün ixrac plaginini buraxacağını vəd edir.

Başqa bir tələb "Üst rəf" şəklidir. İstifadəçi proqramı yuxarı cərgədə (yuxarı rəfdə) görkəmli mövqeyə yerləşdirirsə, proqram həmçinin proqramlar siyahısının yuxarısında iş masası üçün məzmun təmin etməlidir. Ya sadəcə sadə bir şəkil ola bilər, ya da aktiv sahə ola bilər, məsələn sevimli filmlərin siyahısı və ya bizim vəziyyətimizdə radio stansiyaları.

Bir çox tərtibatçılar yeni tvOS-un imkanlarını araşdırmağa başlayırlar. Yaxşı xəbər budur ki, məzmun proqramı yazmaq çox asandır və Apple TVML ilə tərtibatçılar üçün uzun bir yol keçib. Proqram yaratmaq (məsələn, PLAY.CZ və ya iVyszílő) asan və sürətli olmalıdır. Yeni Apple TV-nin satışa çıxması ilə eyni vaxtda çoxlu sayda proqramın hazır olacağı şansı var.

Doğma proqram yazmaq və ya oyunu iOS-dan tvOS-a köçürmək daha çətin olacaq, lakin çox deyil. Ən böyük maneə fərqli idarəetmələr və hər proqram üçün 200 MB limit olacaq. Doğma proqram mağazadan məlumatların yalnız məhdud bir hissəsini yükləyə bilər və qalan hər şey əlavə olaraq yüklənməlidir və sistemin bu məlumatları silməyəcəyinə zəmanət yoxdur. Bununla belə, tərtibatçılar, həm də iOS 9-un bir hissəsi olan "Tətbiq İncəlmə" adlı alətlər dəstinin mövcudluğu sayəsində, şübhəsiz ki, bu məhdudiyyətlə tez bir zamanda məşğul olacaqlar.

Mövzular: , ,
.