إغلق الإعلان

قدمت شركة أبل الأسبوع الماضي، من بين أمور أخرى تلفزيون أبل الجديد مع نظام التشغيل tvOS. من المؤكد أن حقيقة إمكانية تثبيت التطبيقات من متجر التطبيقات في الصندوق الأسود الجديد جعلت المطورين أكثر سعادة.

المطورين لديهم خياران. يمكنهم كتابة تطبيق أصلي يتمتع بإمكانية الوصول الكامل إلى أجهزة Apple TV. إن SDK (مجموعة المكتبات المخصصة للمطورين) المتوفرة تشبه إلى حد كبير ما يعرفه المطورون بالفعل من iPhone وiPad، كما أن لغات البرمجة هي نفسها - Objective-C وSwift الأحدث.

ولكن بالنسبة للتطبيقات الأبسط، عرضت Apple للمطورين خيارًا ثانيًا في شكل TVML - لغة ترميز التلفزيون. إذا كنت تشعر أن اسم TVML يبدو مريبًا مثل HTML، فأنت على حق. إنها حقًا لغة ترميزية تعتمد على XML وتشبه إلى حد كبير HTML، إلا أنها أبسط بكثير ولها بناء جملة أكثر صرامة. ولكنه مثالي تمامًا لتطبيقات مثل Netflix. وسيستفيد المستخدمون أيضًا، لأن صرامة TVML ستجعل تطبيقات الوسائط المتعددة تبدو وتعمل بنفس الشكل تقريبًا.

المسار إلى التطبيق الأول

لذا فإن أول شيء كان علي فعله هو تنزيل الإصدار التجريبي الجديد من بيئة تطوير Xcode (الإصدار 7.1 متوفر هنا). لقد أتاح لي هذا الوصول إلى tvOS SDK وتمكنت من بدء مشروع جديد يستهدف على وجه التحديد الجيل الرابع من Apple TV. يمكن أن يكون التطبيق مخصصًا لنظام التشغيل tvOS فقط، أو يمكن إضافة الكود إلى تطبيق iOS موجود لإنشاء تطبيق "عالمي" - وهو نموذج مشابه لتطبيقات iPhone وiPad اليوم.

المشكلة الأولى: يوفر Xcode فقط القدرة على إنشاء تطبيق أصلي. لكنني وجدت بسرعة قسمًا في الوثائق سيساعد المطورين على تغيير هذا الهيكل العظمي وإعداده لـ TVML. في الأساس، عبارة عن بضعة أسطر من التعليمات البرمجية في Swift، والتي، فقط على Apple TV، تقوم بإنشاء كائن بملء الشاشة وتحميل الجزء الرئيسي من التطبيق، والذي تمت كتابته بالفعل بلغة JavaScript.

المشكلة الثانية: تطبيقات TVML تشبه إلى حد كبير صفحة الويب، وبالتالي يتم تحميل جميع التعليمات البرمجية أيضًا من الإنترنت. التطبيق نفسه هو في الواقع مجرد "أداة تحميل التشغيل"، فهو يحتوي فقط على الحد الأدنى من التعليمات البرمجية والعناصر الرسومية الأساسية (رمز التطبيق وما شابه). في النهاية، نجحت في وضع كود JavaScript الرئيسي مباشرة في التطبيق وحصلت على القدرة على الأقل على عرض رسالة خطأ مخصصة عندما لا يكون Apple TV متصلاً بالإنترنت.

المشكلة الصغيرة الثالثة: يتطلب نظام التشغيل iOS 9 ومعه tvOS بشكل صارم أن تتم جميع الاتصالات بالإنترنت مشفرة عبر HTTPS. هذه ميزة تم تقديمها في نظام التشغيل iOS 9 لجميع التطبيقات والسبب هو الضغط على خصوصية المستخدم وأمن البيانات. لذلك سيكون من الضروري نشر شهادة SSL على خادم الويب. يمكن شراؤه بمبلغ لا يقل عن 5 دولارات (120 كرونة) سنويًا، أو يمكنك استخدام، على سبيل المثال، خدمة CloudFlare، التي ستعتني بـ HTTPS بنفسها، تلقائيًا وبدون استثمار. الخيار الثاني هو إيقاف هذا القيد للتطبيق، وهو أمر ممكن في الوقت الحالي، لكنني بالتأكيد لا أوصي به.

بعد بضع ساعات من قراءة الوثائق، حيث لا تزال هناك أخطاء طفيفة في بعض الأحيان، قمت بإعداد تطبيق أساسي للغاية ولكنه فعال. يعرض النص الشهير "Hello World" وزرين. لقد أمضيت حوالي ساعتين محاولًا تنشيط الزر والقيام بشيء ما. لكن بالنظر إلى الساعات الأولى من الصباح، فضلت الذهاب إلى النوم... وكان ذلك أمرًا جيدًا.

في أحد الأيام، خطرت ببالي فكرة رائعة تتمثل في تنزيل نموذج جاهز لتطبيق TVML مباشرة من Apple. لقد وجدت ما كنت أبحث عنه بسرعة كبيرة في الكود وكان الزر نشطًا ويعمل. من بين أمور أخرى، اكتشفت أيضًا أول جزأين من البرنامج التعليمي لـ tvOS على الإنترنت. ساعد كلا المصدرين كثيرًا، لذلك بدأت مشروعًا جديدًا وبدأت أول تطبيق حقيقي لي.

أول تطبيق حقيقي

لقد بدأت بالكامل من الصفر، أول صفحة TVML. الميزة هي أن Apple قد أعدت 18 نموذجًا جاهزًا لـ TVML للمطورين والتي تحتاج فقط إلى نسخها من الوثائق. استغرق تحرير قالب واحد حوالي ساعة، ويرجع ذلك أساسًا إلى أنني كنت أقوم بإعداد واجهة برمجة التطبيقات (API) الخاصة بنا لإرسال ملف TVML النهائي مع جميع البيانات الضرورية إلى Apple TV.

القالب الثاني استغرق حوالي 10 دقائق فقط. لقد أضفت اثنين من برامج JavaScript - معظم التعليمات البرمجية الموجودة فيهما تأتي مباشرة من Apple، فلماذا نعيد اختراع العجلة. قامت Apple بإعداد نصوص برمجية تهتم بتحميل وعرض قوالب TVML، بما في ذلك مؤشر تحميل المحتوى الموصى به وعرض الأخطاء المحتملة.

وفي أقل من ساعتين، تمكنت من إنشاء تطبيق PLAY.CZ بسيط للغاية ولكنه فعال. يمكنه عرض قائمة بمحطات الراديو، ويمكنه تصفيتها حسب النوع ويمكنه بدء الراديو. نعم، هناك الكثير من الأشياء غير موجودة في التطبيق، لكن الأساسيات تعمل.

[معرف اليوتيوب=”kLKvWC-rj7Q” width=”620″ height=”360″]

الميزة هي أن التطبيق ليس أكثر من مجرد نسخة خاصة من موقع الويب، والتي يتم تشغيلها بواسطة JavaScript ويمكنك أيضًا استخدام CSS لتعديل المظهر.

لا تزال شركة Apple بحاجة إلى بعض الأشياء الإضافية للتحضير. أيقونة التطبيق ليست واحدة، بل اثنين - أصغر وأكبر. الجديد هو أن الأيقونة ليست صورة بسيطة، ولكنها تحتوي على تأثير المنظر وتتكون من 2 إلى 5 طبقات (الخلفية، الكائنات في المنتصف والمقدمة). يمكن أن تحتوي جميع الصور النشطة عبر التطبيق على نفس التأثير.

كل طبقة هي في الواقع مجرد صورة على خلفية شفافة. أعدت شركة Apple تطبيقها الخاص لتجميع هذه الصور ذات الطبقات ووعدت بإصدار مكون إضافي للتصدير لبرنامج Adobe Photoshop قريبًا.

الشرط الآخر هو صورة "الرف العلوي". إذا قام المستخدم بوضع التطبيق في مكان بارز في الصف العلوي (على الرف العلوي)، فيجب أن يوفر التطبيق أيضًا محتوى لسطح المكتب أعلى قائمة التطبيقات. يمكن أن يكون هناك مجرد صورة بسيطة أو يمكن أن تكون منطقة نشطة، على سبيل المثال مع قائمة الأفلام المفضلة أو، في حالتنا، محطات الراديو.

بدأ العديد من المطورين للتو في استكشاف إمكانيات نظام tvOS الجديد. والخبر السار هو أن كتابة تطبيق المحتوى أمر سهل للغاية، وقد قطعت Apple شوطًا طويلاً للمطورين باستخدام TVML. يجب أن يكون إنشاء تطبيق (على سبيل المثال PLAY.CZ أو iVyszílő) أمرًا سهلاً وسريعًا. هناك فرصة جيدة لأن يكون عدد كبير من التطبيقات جاهزًا في نفس الوقت الذي يتم فيه طرح جهاز Apple TV الجديد للبيع.

ستكون كتابة تطبيق أصلي أو نقل لعبة من iOS إلى tvOS أكثر صعوبة، ولكن ليس كثيرًا. ستكون العقبة الأكبر هي عناصر التحكم المختلفة والحد الأقصى البالغ 200 ميجابايت لكل تطبيق. يمكن للتطبيق الأصلي تنزيل جزء محدود فقط من البيانات من المتجر، ويجب تنزيل كل شيء آخر بالإضافة إلى ذلك، وليس هناك ما يضمن أن النظام لن يحذف هذه البيانات. ومع ذلك، من المؤكد أن المطورين سيتعاملون مع هذا القيد بسرعة، وذلك أيضًا بفضل توفر مجموعة من الأدوات تسمى "App Thinning"، والتي تعد أيضًا جزءًا من iOS 9.

المواضيع: , ,
.