जाहिरात बंद करा

ऍपलने गेल्या आठवड्यात इतर गोष्टींबरोबरच सादर केले नवीन ऍपल टीव्ही tvOS ऑपरेटिंग सिस्टमसह. नवीन ब्लॅक बॉक्समध्ये ॲप स्टोअरवरील अनुप्रयोग स्थापित केले जाऊ शकतात या वस्तुस्थितीमुळे विकासकांना नक्कीच आनंद झाला.

विकसकांकडे दोन पर्याय आहेत. ते एक मूळ ॲप लिहू शकतात ज्यात Apple TV हार्डवेअरमध्ये पूर्ण प्रवेश आहे. उपलब्ध SDK (डेव्हलपरसाठी लायब्ररींचा संच) आयफोन, आयपॅड वरून विकसकांना आधीपासूनच माहित असलेल्या गोष्टींसारखेच आहे आणि प्रोग्रामिंग भाषा समान आहेत - ऑब्जेक्टिव्ह-सी आणि तरुण स्विफ्ट.

परंतु सोप्या अनुप्रयोगांसाठी, Apple ने विकसकांना TVML - टेलिव्हिजन मार्कअप लँग्वेजच्या रूपात दुसरा पर्याय ऑफर केला. जर तुम्हाला TVML हे नाव HTML सारखे संशयास्पद वाटत असेल तर तुम्ही बरोबर आहात. ही खरोखर XML वर आधारित मार्कअप भाषा आहे आणि HTML सारखीच आहे, फक्त ती खूप सोपी आहे आणि एक कठोर वाक्यरचना आहे. पण Netflix सारख्या ऍप्लिकेशन्ससाठी ते पूर्णपणे योग्य आहे. आणि वापरकर्त्यांनाही फायदा होईल, कारण TVML च्या कडकपणामुळे मल्टीमीडिया ॲप्लिकेशन्स सारखेच दिसतील आणि कामही करतील.

पहिल्या अर्जाचा मार्ग

म्हणून मला पहिली गोष्ट करायची होती ती म्हणजे Xcode विकास वातावरणाची नवीन बीटा आवृत्ती डाउनलोड करणे (आवृत्ती 7.1 उपलब्ध आहे. येथे). यामुळे मला tvOS SDK मध्ये प्रवेश मिळाला आणि विशेषत: चौथ्या पिढीच्या Apple TV ला लक्ष्य करणारा एक नवीन प्रकल्प सुरू करता आला. ॲप फक्त-tvOS असू शकतो किंवा "युनिव्हर्सल" ॲप तयार करण्यासाठी विद्यमान iOS ॲपमध्ये कोड जोडला जाऊ शकतो - आजच्या iPhone आणि iPad ॲप्ससारखे मॉडेल.

समस्या एक: Xcode केवळ मूळ ॲप तयार करण्याची क्षमता प्रदान करतो. परंतु मला दस्तऐवजीकरणात एक विभाग खूप लवकर सापडला जो विकासकांना हा सांगाडा बदलण्यात आणि TVML साठी तयार करण्यात मदत करेल. मुळात, स्विफ्टमधील कोडच्या काही ओळी आहेत, जे फक्त Apple टीव्हीवर, एक पूर्ण-स्क्रीन ऑब्जेक्ट तयार करतात आणि ॲपचा मुख्य भाग लोड करतात, जो आधीपासून JavaScript मध्ये लिहिलेला आहे.

समस्या दोन: TVML ऍप्लिकेशन्स खरोखर वेब पृष्ठासारखे असतात आणि म्हणून सर्व कोड इंटरनेटवरून लोड केले जातात. अनुप्रयोग स्वतःच एक "बूटलोडर" आहे, त्यात फक्त किमान कोड आणि सर्वात मूलभूत ग्राफिक घटक (अनुप्रयोग चिन्ह आणि सारखे) असतात. सरतेशेवटी, मी यशस्वीरित्या मुख्य JavaScript कोड थेट ॲपमध्ये ठेवला आणि Apple TV इंटरनेटशी कनेक्ट नसताना किमान एक सानुकूल त्रुटी संदेश प्रदर्शित करण्याची क्षमता मिळाली.

तिसरी छोटी समस्या: iOS 9 आणि tvOS साठी काटेकोरपणे आवश्यक आहे की इंटरनेटवरील सर्व संप्रेषण HTTPS द्वारे एन्क्रिप्ट केले जावे. हे सर्व ॲप्ससाठी iOS 9 मध्ये सादर केलेले वैशिष्ट्य आहे आणि त्याचे कारण म्हणजे वापरकर्त्याची गोपनीयता आणि डेटा सुरक्षिततेवर दबाव आहे. त्यामुळे वेब सर्व्हरवर SSL प्रमाणपत्र उपयोजित करणे आवश्यक असेल. हे प्रति वर्ष कमीत कमी $5 (120 मुकुट) मध्ये खरेदी केले जाऊ शकते किंवा तुम्ही वापरू शकता, उदाहरणार्थ, क्लाउडफ्लेअर सेवा, जी HTTPS ची स्वतःहून, आपोआप आणि गुंतवणुकीशिवाय काळजी घेईल. दुसरा पर्याय म्हणजे अनुप्रयोगासाठी हे निर्बंध बंद करणे, जे सध्या शक्य आहे, परंतु मी निश्चितपणे याची शिफारस करणार नाही.

कागदपत्रे वाचल्यानंतर काही तासांनंतर, जिथे अजूनही अधूनमधून किरकोळ त्रुटी आहेत, मी एक अतिशय मूलभूत परंतु कार्यरत अनुप्रयोग तयार केला. त्यात लोकप्रिय मजकूर "हॅलो वर्ल्ड" आणि दोन बटणे प्रदर्शित केली गेली. मी बटण सक्रिय होण्यासाठी आणि प्रत्यक्षात काहीतरी करण्याचा प्रयत्न करत सुमारे दोन तास घालवले. पण पहाटेची वेळ लक्षात घेता, मी झोपायला जाणे पसंत केले… आणि ती चांगली गोष्ट होती.

दुसऱ्या दिवशी, मला थेट Apple वरून एक रेडीमेड नमुना TVML ऍप्लिकेशन डाउनलोड करण्याची उज्ज्वल कल्पना आली. मी कोडमध्ये जे शोधत होतो ते मला त्वरीत सापडले आणि बटण थेट आणि कार्यरत होते. इतर गोष्टींबरोबरच, मी इंटरनेटवर tvOS ट्यूटोरियलचे पहिले दोन भाग देखील शोधले. दोन्ही संसाधनांनी खूप मदत केली, म्हणून मी एक नवीन प्रकल्प सुरू केला आणि माझा पहिला वास्तविक अनुप्रयोग सुरू केला.

प्रथम वास्तविक अर्ज

मी पूर्णपणे सुरवातीपासून सुरुवात केली, पहिले TVML पृष्ठ. फायदा असा आहे की Apple ने विकसकांसाठी 18 रेडीमेड TVML टेम्प्लेट तयार केले आहेत ज्यांची फक्त कागदपत्रांमधून कॉपी करणे आवश्यक आहे. एक टेम्प्लेट संपादित करण्यासाठी सुमारे एक तास लागला, मुख्यत्वेकरून मी Apple TV वर सर्व आवश्यक डेटासह तयार TVML पाठवण्यासाठी आमचे API तयार करत होतो.

दुसऱ्या टेम्पलेटला फक्त 10 मिनिटे लागली. मी दोन JavaScripts जोडल्या आहेत - त्यातील बहुतेक कोड थेट Apple कडून येतात, मग चाक पुन्हा शोधण्याचे कारण. Apple ने स्क्रिप्ट्स तयार केल्या आहेत ज्यात TVML टेम्पलेट लोड करणे आणि प्रदर्शित करणे याची काळजी घेतली जाते, ज्यामध्ये शिफारस केलेले सामग्री लोडिंग निर्देशक आणि संभाव्य त्रुटी प्रदर्शन समाविष्ट आहे.

दोन तासांपेक्षा कमी वेळात, मी एक अतिशय उघड, पण कार्यरत PLAY.CZ ऍप्लिकेशन एकत्र ठेवू शकलो. हे रेडिओ स्टेशनची सूची प्रदर्शित करू शकते, ते शैलीनुसार फिल्टर करू शकते आणि ते रेडिओ सुरू करू शकते. होय, बऱ्याच गोष्टी ॲपमध्ये नाहीत, परंतु मूलभूत गोष्टी कार्य करतात.

[youtube id=”kLKvWC-rj7Q” रुंदी=”620″ उंची=”360″]

फायदा असा आहे की अनुप्रयोग मुळात वेबसाइटच्या विशेष आवृत्तीपेक्षा अधिक काही नाही, जे JavaScript द्वारे समर्थित आहे आणि आपण देखावा सुधारण्यासाठी CSS देखील वापरू शकता.

Apple ला अजून काही गोष्टींची तयारी करायची आहे. अनुप्रयोग चिन्ह एक नाही, परंतु दोन - लहान आणि मोठे. नवीनता अशी आहे की चिन्ह ही साधी प्रतिमा नाही, परंतु त्यात पॅरॅलॅक्स प्रभाव आहे आणि 2 ते 5 स्तर (पार्श्वभूमी, मध्यभागी आणि अग्रभागातील वस्तू) बनलेला आहे. संपूर्ण अनुप्रयोगावरील सर्व सक्रिय प्रतिमांमध्ये समान प्रभाव असू शकतो.

प्रत्येक स्तर प्रत्यक्षात पारदर्शक पार्श्वभूमीवर फक्त एक प्रतिमा आहे. Apple ने या स्तरित प्रतिमा संकलित करण्यासाठी स्वतःचा अनुप्रयोग तयार केला आहे आणि लवकरच Adobe Photoshop साठी निर्यात प्लगइन जारी करण्याचे वचन दिले आहे.

दुसरी आवश्यकता "टॉप शेल्फ" प्रतिमा आहे. वापरकर्त्याने ॲपला वरच्या ओळीत (वरच्या शेल्फवर) प्रमुख स्थानावर ठेवल्यास, ॲपने ॲप सूचीच्या वर असलेल्या डेस्कटॉपसाठी सामग्री देखील प्रदान करणे आवश्यक आहे. एकतर फक्त एक साधे चित्र असू शकते किंवा ते सक्रिय क्षेत्र असू शकते, उदाहरणार्थ आवडत्या चित्रपटांच्या सूचीसह किंवा आमच्या बाबतीत, रेडिओ स्टेशन.

अनेक विकासक नुकतेच नवीन tvOS च्या शक्यता शोधू लागले आहेत. चांगली बातमी अशी आहे की सामग्री ॲप लिहिणे खूप सोपे आहे, आणि Apple TVML सह विकसकांसाठी खूप पुढे गेले आहे. अनुप्रयोग तयार करणे (उदाहरणार्थ PLAY.CZ किंवा iVyszílő) सोपे आणि जलद असावे. नवीन ऍपल टीव्ही विक्रीवर असताना एकाच वेळी मोठ्या संख्येने ऍप्लिकेशन तयार होण्याची चांगली संधी आहे.

मूळ ॲप लिहिणे किंवा iOS वरून tvOS वर गेम पोर्ट करणे अधिक आव्हानात्मक असेल, परंतु जास्त नाही. सर्वात मोठा अडथळा भिन्न नियंत्रणे आणि 200MB प्रति ॲप मर्यादा असेल. नेटिव्ह ॲप्लिकेशन स्टोअरमधून डेटाचा केवळ मर्यादित भाग डाउनलोड करू शकतो आणि इतर सर्व काही अतिरिक्तपणे डाउनलोड करावे लागतील आणि सिस्टम हा डेटा हटवणार नाही याची कोणतीही हमी नाही. तथापि, डेव्हलपर नक्कीच या मर्यादेचा त्वरीत सामना करतील, तसेच iOS 9 चा भाग असलेल्या "App Thinning" नावाच्या साधनांच्या संचाच्या उपलब्धतेबद्दल धन्यवाद.

.