Apple ҳафтаи гузашта дар байни чизҳои дигар пешниҳод кард телевизиони нави Apple бо системаи оператсионии tvOS. Далели он, ки замимаҳои App Store дар қуттии нави сиёҳ насб карда мешаванд, бешубҳа таҳиягаронро аз ҳама хурсанд кард.
Таҳиягарон ду интихоб доранд. Онҳо метавонанд як барномаи ватанӣ нависанд, ки дастрасии пурра ба сахтафзори Apple TV дошта бошад. SDK дастрас (маҷмӯи китобхонаҳо барои таҳиягарон) ба он чизе, ки таҳиягарон аллакай аз iPhone, iPad медонанд, хеле монанд аст ва забонҳои барномасозӣ якхелаанд - Objective-C ва Swift ҷавонтар.
Аммо барои барномаҳои соддатар, Apple ба таҳиягарон як варианти дуюмро дар шакли TVML пешниҳод кард - Забони телевизионии Markup. Агар шумо фикр кунед, ки номи TVML шубҳанок ба HTML монанд аст, шумо дуруст ҳастед. Ин дар ҳақиқат як забони аломатгузорӣ дар асоси XML аст ва ба HTML хеле монанд аст, танҳо он хеле соддатар аст ва синтаксиси сахттар дорад. Аммо он барои барномаҳое мисли Netflix комилан комил аст. Ва корбарон низ баҳра хоҳанд бурд, зеро сахтгирии TVML барномаҳои мултимедиявиро ба назар монанд ва кор мекунанд.
Роҳ ба барномаи аввал
Ҳамин тавр, аввалин чизе, ки ман бояд анҷом додам, зеркашӣ кардани версияи нави бета-муҳити таҳияи Xcode буд (версияи 7.1 дастрас аст) Ин ҷо). Ин ба ман дастрасӣ ба tvOS SDK дод ва тавонист як лоиҳаи наверо оғоз кунад, ки махсусан насли чоруми Apple TV-ро ҳадаф қарор медиҳад. Ин барнома метавонад танҳо tvOS бошад ё кодро метавон ба барномаи мавҷудаи iOS илова кард, то як барномаи "универсалӣ" - модели шабеҳи барномаҳои имрӯзаи iPhone ва iPad бошад.
Мушкилоти якум: Xcode танҳо қобилияти эҷоди як барномаи ватаниро пешниҳод мекунад. Аммо ман хеле зуд дар ҳуҷҷатҳо бахшеро ёфтам, ки ба таҳиягарон дар тағир додани ин скелет ва омода кардани он барои TVML кӯмак мекунад. Асосан, ин чанд сатри код дар Swift аст, ки танҳо дар ТВ Apple як объекти пурраи экран эҷод мекунад ва қисми асосии барномаро, ки аллакай дар JavaScript навишта шудааст, бор мекунад.
Мушкилоти дуюм: Барномаҳои TVML воқеан ба веб саҳифа монанданд ва аз ин рӯ ҳама рамзҳо аз интернет бор карда мешаванд. Худи барнома воқеан танҳо як "боркунаки боркунанда" аст, ки он танҳо ҳадди ақали код ва унсурҳои асосии графикиро дар бар мегирад (нишонаҳои барнома ва монанди инҳо). Дар охир, ман бомуваффақият рамзи асосии JavaScript-ро мустақиман ба барнома гузоштам ва имкон пайдо кардам, ки ҳадди аққал паёми хатогии фармоиширо нишон диҳам, вақте ки телевизиони Apple ба интернет пайваст нест.
Мушкилоти хурди сеюм: iOS 9 ва бо он tvOS ба таври қатъӣ талаб мекунад, ки ҳама иртибот ба Интернет тавассути HTTPS рамзгузоришуда сурат гирад. Ин хусусиятест, ки дар iOS 9 барои ҳама барномаҳо ҷорӣ шудааст ва сабаб фишор ба махфияти корбар ва амнияти додаҳост. Аз ин рӯ, зарур аст, ки сертификати SSL дар сервери веб ҷойгир карда шавад. Онро дар як сол ба маблағи на камтар аз 5 доллар (120 тоҷ) харидан мумкин аст ё шумо метавонед, масалан, хидмати CloudFlare -ро истифода баред, ки HTTPS-ро худ аз худ ба таври худкор ва бидуни сармоягузорӣ нигоҳубин мекунад. Варианти дуюм хомӯш кардани ин маҳдудият барои барнома аст, ки ҳоло имконпазир аст, аммо ман бешубҳа онро тавсия намедиҳам.
Пас аз чанд соати хондани ҳуҷҷатҳо, ки дар он ҷо то ҳол хатогиҳои ночиз вуҷуд доранд, ман як барномаи хеле оддӣ, вале корӣ кор кардам. Дар он матни маъмули "Салом Ҷаҳон" ва ду тугма нишон дода шудааст. Ман тақрибан ду соат кӯшиш кардам, ки тугма фаъол бошад ва воқеан коре кунад. Аммо бо назардошти соатҳои барвақти саҳар, ман хоб рафтанро афзалтар донистам... ва ин кори хуб буд.
Рӯзи дигар ман идеяи равшане доштам, ки бевосита аз Apple як барномаи намунаи TVML-ро зеркашӣ кунам. Ман он чизеро, ки ҷустуҷӯ мекардам, дар код хеле зуд ёфтам ва тугма зинда ва кор мекард. Дар байни чизҳои дигар, ман инчунин ду қисми аввали дастури tvOS-ро дар Интернет кашф кардам. Ҳарду захираҳо бисёр кӯмак карданд, бинобар ин ман лоиҳаи навро оғоз кардам ва аввалин барномаи воқеии худро оғоз кардам.
Аввалин аризаи воқеӣ
Ман комилан аз сифр оғоз кардам, аввалин саҳифаи TVML. Бартарии он дар он аст, ки Apple барои таҳиягарон 18 қолаби TVML-ро омода кардааст, ки онҳоро танҳо аз ҳуҷҷатҳо нусхабардорӣ кардан лозим аст. Таҳрири як шаблон тақрибан як соат тӯл кашид, пеш аз ҳама, ман API-и худро барои фиристодани TVML-и тайёр бо тамоми маълумоти зарурӣ ба ТВ Apple омода мекардам.
Шаблони дуюм ҳамагӣ тақрибан 10 дақиқа вақт гирифт. Ман ду JavaScript илова кардам - аксари рамзҳои онҳо мустақиман аз Apple меояд, пас чаро чархро дубора ихтироъ кунед. Apple скриптҳоеро омода кардааст, ки барои бор кардан ва намоиш додани қолибҳои TVML, аз ҷумла нишондиҳандаи боркунии мундариҷаи тавсияшуда ва намоиши хатогии эҳтимолӣ ғамхорӣ мекунанд.
Дар тӯли камтар аз ду соат, ман тавонистам як барномаи хеле луч, вале фаъоли PLAY.CZ-ро ҷамъ кунам. Он метавонад рӯйхати пойгоҳҳои радиоро намоиш диҳад, он метавонад аз рӯи жанр филтр кунад ва радиоро оғоз кунад. Бале, бисёр чизҳо дар барнома нестанд, аммо асосҳо кор мекунанд.
[youtube id=”kLKvWC-rj7Q” width=”620″ баландии=”360″]
Бартарии он дар он аст, ки барнома аслан як версияи махсуси вебсайт аст, ки бо JavaScript кор мекунад ва шумо инчунин метавонед CSS-ро барои тағир додани намуди зоҳирӣ истифода баред.
Apple ҳанӯз барои омода кардани якчанд чизҳои дигар талаб мекунад. Нишонаи барнома як не, балки ду аст - хурдтар ва калонтар. Навоварӣ дар он аст, ки икон тасвири оддӣ нест, балки дорои эффекти параллакс буда, аз 2 то 5 қабат (фон, объектҳо дар мобайн ва пеш) иборат аст. Ҳама тасвирҳои фаъол дар барнома метавонанд ҳамон эффектро дар бар гиранд.
Ҳар як қабат воқеан танҳо тасвир дар заминаи шаффоф аст. Apple барномаи худро барои тартиб додани ин тасвирҳои қабата омода кардааст ва ваъда медиҳад, ки ба зудӣ плагини содиротӣ барои Adobe Photoshop мебарорад.
Талаботи дигар ин тасвири "Рафи боло" аст. Агар корбар барномаро дар ҷои намоён дар сатри боло (дар рафи боло) ҷойгир кунад, барнома инчунин бояд мундариҷаро барои мизи кории болои рӯйхати барномаҳо таъмин намояд. Он метавонад ё танҳо як тасвири оддӣ бошад ё он метавонад як минтақаи фаъол бошад, масалан бо рӯйхати филмҳои дӯстдошта ё дар ҳолати мо, радиостансияҳо.
Бисёре аз таҳиягарон ҳоло ба омӯхтани имкониятҳои tvOS нав шурӯъ мекунанд. Хабари хуш ин аст, ки навиштани барномаи мундариҷа хеле осон аст ва Apple барои таҳиягарон бо TVML роҳи дарозеро тай кардааст. Сохтани барнома (масалан PLAY.CZ ё iVyszílő) бояд осон ва зуд бошад. Имконияти хубе вуҷуд дорад, ки шумораи зиёди барномаҳо дар як вақт омода хоҳанд шуд, ки телевизиони нави Apple Apple ба фурӯш мебарояд.
Навиштани барномаи аслӣ ё интиқол додани бозӣ аз iOS ба tvOS душвортар хоҳад буд, аммо на он қадар зиёд. Бузургтарин монеа назорати гуногун ва маҳдудияти 200 МБ барои як барнома хоҳад буд. Замимаи маҳаллӣ метавонад танҳо як қисми маҳдуди маълумотро аз мағоза зеркашӣ кунад ва ҳама чизи боқимонда бояд ба таври иловагӣ зеркашӣ карда шавад ва ҳеҷ кафолате нест, ки система ин маълумотро нест намекунад. Бо вуҷуди ин, таҳиягарон бешубҳа ин маҳдудиятро зуд ҳал хоҳанд кард, инчунин ба шарофати мавҷудияти маҷмӯи абзорҳо бо номи "Барнома Thinning", ки онҳо низ як қисми iOS 9 мебошанд.
Мақолаи хуб. ташаккур. Шояд бо мурури замон мо аз Apple инчунин як ҳалли корбарро барои омода кардани барномаҳои соддатар (ҳалҳо) хоҳем дид, чуноне ки бо FileMaker барои iOS имконпазир аст, бидуни таҳиякунанда.
Дар назария ... боркунаки Swift чанд сатр аст, ки то ҳол якхелаанд, танҳо URL барои аввалин файли TVML тағир меёбад. Агар касе бихоҳад, онҳо эҳтимолан скрипте нависанд, ки метавонад бо URL-и шумо сохтаро ба таври фосилавӣ иҷро кунад ва файли IPA-ро баргардонад. Ё агар шумо Mac дошта бошед, фиристодани лоиҳа мушкил нест, ки дар он шумо танҳо URL-ро гузошта, сохтани онро оғоз мекунед. Бартарии он дар он аст, ки агар TVML берун аз барнома бошад, ба шумо воқеан танҳо як сохтори ҷамъиятӣ ва эҳтимолан як сохтори хусусӣ (рушд) лозим аст ва шумо метавонед танҳо TVML-ро дар сервер ва ба ин васила кори барнома тағир диҳед.
"Барнома метавонад танҳо tvOS бошад ё кодро метавон ба барномаи мавҷудаи iOS илова кард, то як барномаи "як андоза" эҷод кунад - модели шабеҳи барномаҳои имрӯзаи iPhone ва iPad."
Ман ҳайронам, ки шумо чӣ маъно доред? Шахсан, ман дар ҳеҷ ҷо роҳи сохтани як сохтмонро наёфтаам, ки iPhone, iPad ва Apple TV-и универсалиро дар бар мегирад.. зеро онҳо SDK-ҳои алоҳида мебошанд (монанди OSX), ба шумо ҳадафи иловагӣ барои tvOS ва аз ин рӯ сохтани алоҳида лозим аст. Ман чизе гум кардаам?
дар Xcode 7.1 замимаҳои tvOS метавонанд ҳамчун ҳадафи дигар ба лоиҳаи мавҷуда илова карда шаванд - монанд ба замимаҳо барои Apple Watch ё шояд виҷет барои маркази огоҳӣ. Аммо, ман ҳанӯз намедонам, ки он чӣ гуна ба мағоза бор карда мешавад... Ман гумон мекунам, ки Xcode як баста мефиристад ва App Store онро тақсим мекунад... Шояд ба он чизе ки онҳо бо Watch ҳоло мекунанд, монанд аст.
noo .. ба андешаи ман, ин 2 чизи тамоман гуногун аст.. тамошо васеъ аст .. ё ҳадди аққал он то watchOS 2.0 буд.. он якҷоя бо ҳадафи iOS дода шуда буд ва ҳатто бе iPhone кор намекард.. ATV як сохтори алоҳида аст.. ин чизест, ки ман дар бораи он гап мезанам, оё сохтани ATV алоҳида хоҳад буд (шумо бояд 2 $ пардохт кунед) ва илова бар ин, iOS барои 2 доллар пардохт кард ё мумкин аст универсалӣ диҳад 2$ ҳам барои iOS ва ҳам ATV сохта мешавад .. пас ман фикр мекунам не, зеро ҳатто ҳадафи iOS оилаи дастгоҳҳоро барои ATV пешниҳод намекунад..
Пас, оғози воқеӣ нишон хоҳад дод, аммо он воқеан ҳамон тавре ки рамзи Apple Watch рафтор мекунад, масалан. Дар акси ҳол, дар ҳуҷҷатҳо гуфта мешавад, ки ба замимаи мавҷуда рамзи tvOS илова кардан мумкин аст ва ба ин васила имкон пайдо мешавад, ки як барнома (як объект дар App Store) ҳам барои iOS ва ҳам tvOS - як харид барои фармоишгар, ё ҳамчун як шахси алоҳида - хариди алоҳида барои iOS ва tvOS.
Танҳо барои равшан кардан, ин на 200 МБ барои як барнома, балки 200 МБ дар дохили маҳаллӣ нигоҳ дошта мешавад ва боқимонда ҳангоми зарурат аз шабака зеркашӣ карда мешавад.
Ташаккур, ман ҳамин тавр фикр мекардам, аммо эҳтимол ман хато гуфтам. Ҳама чиз аз 200 МБ зиёд (ё ҳама чизи ба таври илова зеркашидашуда) ҳамчун кэш нигоҳ дошта мешавад ва агар система қарор кунад, ки фазои он тамом мешавад, он ба нест кардани он шурӯъ мекунад - ин эҳтимол то мавҷуд набудани фазои холӣ ва сипас мундариҷаи камтарин истифодашуда рӯй нахоҳад дод. нест карда мешавад, аз ин рӯ, дар амал эҳтимолан мушкилии зиёд нахоҳад дошт.
Боз чӣ ман бояд фаҳмам, гӯё ин маҳдудият ба бозиҳо дахл надорад, ё бозӣ метавонад дар пойгоҳ аз 200 МБ калонтар бошад. Аммо ман то ҳол дақиқ намедонам, ки ин чӣ маъно дорад. Ин комилан имконпазир аст, ки Apple ҳоло ҳам ин сиёсатро мувофиқи фикру мулоҳизаҳои таҳиягарон ислоҳ мекунад.
hehe Pokemon TCG – 4 ГБ, Бетартибиҳои онлайн фармоиш диҳед – 1,6 ГБ Hearthstone 1,3 ГБ Ман дар ҳақиқат дар ин бора кунҷкобу дорам.
маълумот буд, ки бозиҳо дорои режими махсус мебошанд. Ҳоло ман тафсилотро ҷамъ карда истодаам ва мо мақоларо ба итмом мерасонем.
Ман ин корро карда наметавонам ва агар касеро хафа карда бошам пешакӣ узр мепурсам, аммо ман танҳо як шодии бузург, самимӣ ва самимӣ дорам, ки мехостам бо шумо мубодила кунам...
Як рӯз пас аз эълони телевизиони нави Apple, ман танбал нашудам ва ба лотереяи Apple номнавис шудам (оё ман интихоб кунам?) бо имкони дарёфти маҷмӯаи таҳиякунанда ҳатто пеш аз ба фурӯш баромадани он.
Шоми дирӯз, Apple ба ман навишт, ки маро барои партияи аввал интихоб кардааст :)
Ҳамин тавр, ман бо муаллифи ин мақола яксон нестам ва ман ростқавлона дар Preschool Brasnicce барои Apple TV кор мекунам - дар Дӯкони Барномаҳои шумо дар моҳи октябр дастрас аст :)
бинобар ин ман ҳис мекунам, ки ҳар касе, ки сабти ном шудааст, шояд онро гирифта бошад :) Ман низ дирӯз фармоиш додам ва воқеан, дар ҳақиқат бесаброна интизори он ҳастам... Ва ман як нафари дигарро медонам, ки низ интизори интиқоли ӯ аст...
Ба ҳар ҳол, то ҳол чунин ба назар мерасад, ки ҳангоми оғози фурӯш эҳтимолан барномаҳо зиёд хоҳанд буд :)
Эҳтимол ҳама накунанд - онҳо ба ман надодаанд :(
:( Ман ба шумо раҳм мекунам.
Агар касе бихоҳад, ман ҳашт стикери сафеди Apple дорам… Ман метавонам онҳоро бо почта фиристам…