Tutup iklan

Apple minggu lepas dibentangkan, antara lain Apple TV baharu dengan sistem pengendalian tvOS. Hakikat bahawa aplikasi daripada App Store boleh dipasang dalam kotak hitam baharu pastinya membuatkan pembangun paling gembira.

Pemaju mempunyai dua pilihan. Mereka boleh menulis apl asli yang mempunyai akses penuh kepada perkakasan Apple TV. SDK yang tersedia (set perpustakaan untuk pembangun) sangat serupa dengan apa yang telah diketahui oleh pembangun daripada iPhone, iPad, dan bahasa pengaturcaraan adalah sama - Objektif-C dan Swift yang lebih muda.

Tetapi untuk aplikasi yang lebih mudah, Apple menawarkan pembangun pilihan kedua dalam bentuk TVML - Bahasa Penanda Televisyen. Jika anda merasakan bahawa nama TVML kelihatan mencurigakan seperti HTML, anda betul. Ia benar-benar bahasa markup berdasarkan XML dan sangat serupa dengan HTML, cuma ia lebih mudah dan mempunyai sintaks yang lebih ketat. Tetapi ia sangat sesuai untuk aplikasi seperti Netflix. Dan pengguna juga akan mendapat manfaat, kerana ketegasan TVML akan menjadikan aplikasi multimedia kelihatan dan berfungsi dengan sama.

Laluan ke aplikasi pertama

Jadi perkara pertama yang saya perlu lakukan ialah memuat turun versi beta baharu persekitaran pembangunan Xcode (versi 7.1 tersedia di sini). Ini memberi saya akses kepada SDK tvOS dan dapat memulakan projek baharu yang khusus menyasarkan Apple TV generasi keempat. Apl itu boleh menjadi tvOS sahaja, atau kod itu boleh ditambahkan pada apl iOS sedia ada untuk mencipta apl "universal" - model yang serupa dengan apl iPhone dan iPad hari ini.

Masalah satu: Xcode hanya menawarkan keupayaan untuk mencipta aplikasi asli. Tetapi saya dengan cepat menemui bahagian dalam dokumentasi yang akan membantu pembangun menukar rangka ini dan menyediakannya untuk TVML. Pada asasnya, beberapa baris kod dalam Swift yang, hanya pada Apple TV, mencipta objek skrin penuh dan memuatkan bahagian utama apl, yang sudah ditulis dalam JavaScript.

Masalah dua: Aplikasi TVML benar-benar seperti halaman web, dan oleh itu semua kod dimuatkan dari internet. Aplikasi itu sendiri sebenarnya hanyalah "pemuat but", ia mengandungi hanya kod minimum dan elemen grafik yang paling asas (ikon aplikasi dan seumpamanya). Akhirnya, saya berjaya meletakkan kod JavaScript utama terus ke dalam aplikasi dan mendapat keupayaan untuk sekurang-kurangnya memaparkan mesej ralat tersuai apabila Apple TV tidak disambungkan ke Internet.

Masalah kecil ketiga: iOS 9 dan dengannya tvOS dengan tegas memerlukan semua komunikasi ke Internet berlaku disulitkan melalui HTTPS. Ini adalah ciri yang diperkenalkan dalam iOS 9 untuk semua aplikasi dan sebabnya ialah tekanan terhadap privasi pengguna dan keselamatan data. Jadi adalah perlu untuk menggunakan sijil SSL pada pelayan web. Ia boleh dibeli dengan harga serendah $5 (120 mahkota) setahun, atau anda boleh menggunakan, sebagai contoh, perkhidmatan CloudFlare, yang akan menjaga HTTPS dengan sendirinya, secara automatik dan tanpa pelaburan. Pilihan kedua adalah untuk mematikan sekatan ini untuk aplikasi, yang mungkin buat masa ini, tetapi saya pasti tidak akan mengesyorkannya.

Selepas beberapa jam membaca dokumentasi, di mana masih terdapat ralat kecil sekali-sekala, saya menghasilkan aplikasi yang sangat asas tetapi berfungsi. Ia memaparkan teks popular "Hello World" dan dua butang. Saya menghabiskan kira-kira dua jam mencuba untuk mengaktifkan butang dan benar-benar melakukan sesuatu. Tetapi memandangkan waktu awal pagi, saya lebih suka tidur… dan itu adalah perkara yang baik.

Pada hari yang lain, saya mempunyai idea bernas untuk memuat turun sampel aplikasi TVML siap pakai terus daripada Apple. Saya menjumpai apa yang saya cari dengan cepat dalam kod tersebut dan butang tersebut telah hidup dan berfungsi. Antara lain, saya juga menemui dua bahagian pertama tutorial tvOS di Internet. Kedua-dua sumber banyak membantu, jadi saya memulakan projek baharu dan memulakan aplikasi sebenar pertama saya.

Aplikasi sebenar pertama

Saya bermula sepenuhnya dari awal, halaman pertama TVML. Kelebihannya ialah Apple telah menyediakan 18 templat TVML siap sedia untuk pembangun yang hanya perlu disalin daripada dokumentasi. Mengedit satu templat mengambil masa kira-kira sejam, terutamanya kerana saya sedang menyediakan API kami untuk menghantar TVML siap dengan semua data yang diperlukan ke Apple TV.

Templat kedua hanya mengambil masa kira-kira 10 minit. Saya telah menambah dua JavaScript - kebanyakan kod di dalamnya datang terus daripada Apple, jadi mengapa mencipta semula roda. Apple telah menyediakan skrip yang menjaga memuatkan dan memaparkan templat TVML, termasuk penunjuk pemuatan kandungan yang disyorkan dan kemungkinan paparan ralat.

Dalam masa kurang daripada dua jam, saya dapat menyusun aplikasi PLAY.CZ yang sangat kosong tetapi berfungsi. Ia boleh memaparkan senarai stesen radio, ia boleh menapisnya mengikut genre dan ia boleh memulakan radio. Ya, banyak perkara tiada dalam apl, tetapi asasnya berfungsi.

[id youtube=”kLKvWC-rj7Q” lebar=”620″ tinggi=”360″]

Kelebihannya ialah aplikasi itu pada dasarnya tidak lebih daripada versi khas tapak web, yang dikuasakan oleh JavaScript dan anda juga boleh menggunakan CSS untuk mengubah suai penampilan.

Apple masih memerlukan beberapa perkara lagi untuk disediakan. Ikon aplikasi bukan satu, tetapi dua - lebih kecil dan lebih besar. Kebaharuan ialah ikon itu bukan imej mudah, tetapi mengandungi kesan paralaks dan terdiri daripada 2 hingga 5 lapisan (latar belakang, objek di tengah dan latar depan). Semua imej aktif di seluruh aplikasi boleh mengandungi kesan yang sama.

Setiap lapisan sebenarnya hanyalah imej pada latar belakang lutsinar. Apple telah menyediakan aplikasinya sendiri untuk menyusun imej berlapis ini dan berjanji untuk mengeluarkan pemalam eksport untuk Adobe Photoshop tidak lama lagi.

Keperluan lain ialah imej "Rak Teratas". Jika pengguna meletakkan apl pada kedudukan yang menonjol di baris atas (di rak atas), apl itu juga mesti menyediakan kandungan untuk desktop di atas senarai apl. Boleh ada sama ada hanya gambar ringkas atau ia boleh menjadi kawasan aktif, contohnya dengan senarai filem kegemaran atau, dalam kes kami, stesen radio.

Ramai pembangun baru mula meneroka kemungkinan tvOS baharu. Berita baiknya ialah menulis aplikasi kandungan adalah sangat mudah, dan Apple telah pergi jauh untuk pembangun dengan TVML. Membina aplikasi (contohnya PLAY.CZ atau iVyszílő) hendaklah mudah dan pantas. Terdapat kemungkinan besar bahawa sejumlah besar aplikasi akan disediakan pada masa yang sama dengan Apple TV baharu mula dijual.

Menulis apl asli atau mengalihkan permainan daripada iOS ke tvOS akan menjadi lebih mencabar, tetapi tidak banyak. Halangan terbesar ialah kawalan yang berbeza dan had 200MB setiap apl. Aplikasi asli hanya boleh memuat turun sebahagian terhad data dari kedai, dan segala-galanya mesti dimuat turun tambahan, dan tiada jaminan bahawa sistem tidak akan memadamkan data ini. Walau bagaimanapun, pembangun pasti akan menangani had ini dengan cepat, juga terima kasih kepada ketersediaan satu set alat yang dipanggil "App Thinning", yang juga merupakan sebahagian daripada iOS 9.

Topik: , ,
.