ඇපල් පසුගිය සතියේ වෙනත් දේ අතර ඉදිරිපත් කළේය නව Apple TV tvOS මෙහෙයුම් පද්ධතිය සමඟ. App Store වෙතින් යෙදුම් නව කළු පෙට්ටිය තුළ ස්ථාපනය කළ හැකි බව නිසැකවම සංවර්ධකයින් වඩාත් සතුටු විය.
සංවර්ධකයින්ට විකල්ප දෙකක් තිබේ. ඔවුන්ට Apple TV දෘඩාංග වෙත පූර්ණ ප්රවේශයක් ඇති ස්වදේශීය යෙදුමක් ලිවිය හැකිය. පවතින SDK (සංවර්ධකයින් සඳහා පුස්තකාල කට්ටලය) iPhone, iPad වෙතින් සංවර්ධකයින් දැනටමත් දන්නා දේට බෙහෙවින් සමාන වන අතර ක්රමලේඛන භාෂා සමාන වේ - Objective-C සහ තරුණ Swift.
නමුත් සරල යෙදුම් සඳහා, Apple විසින් සංවර්ධකයින්ට TVML - Television Markup Language ආකාරයෙන් දෙවන විකල්පය ලබා දුන්නේය. TVML යන නම HTML ලෙස සැක සහිත බව ඔබට හැඟේ නම්, ඔබ හරි. එය සැබවින්ම XML මත පදනම් වූ සලකුණු භාෂාවක් වන අතර HTML වලට බොහෝ සමාන වේ, එය වඩාත් සරල වන අතර දැඩි වාක්ය ඛණ්ඩයක් ඇත. නමුත් එය Netflix වැනි යෙදුම් සඳහා සම්පූර්ණයෙන්ම පරිපූර්ණයි. TVML හි දැඩි බව බහුමාධ්ය යෙදුම් පෙනුමෙන් හා ක්රියා කරන නිසා පරිශීලකයින්ටද ප්රතිලාභ ලැබෙනු ඇත.
පළමු යෙදුම සඳහා මාර්ගය
එබැවින් මට කළ යුතු පළමු දෙය නම් Xcode සංවර්ධන පරිසරයේ නව බීටා අනුවාදය බාගත කිරීමයි (7.1 අනුවාදය තිබේ. මෙහි) මෙය මට tvOS SDK වෙත ප්රවේශය ලබා දුන් අතර විශේෂයෙන්ම සිව්වන පරම්පරාවේ Apple TV ඉලක්ක කර ගනිමින් නව ව්යාපෘතියක් ආරම්භ කිරීමට හැකි විය. යෙදුම tvOS පමණක් විය හැකිය, නැතහොත් "විශ්වීය" යෙදුමක් නිර්මාණය කිරීම සඳහා පවතින iOS යෙදුමකට කේතය එක් කළ හැකිය - අද iPhone සහ iPad යෙදුම් වලට සමාන ආකෘතියකි.
ගැටලුව එක: Xcode මඟින් දේශීය යෙදුමක් නිර්මාණය කිරීමේ හැකියාව පමණක් ලබා දෙයි. නමුත් සංවර්ධකයින්ට මෙම ඇටසැකිල්ල වෙනස් කිරීමට සහ TVML සඳහා එය සකස් කිරීමට උපකාර වන කොටසක් මම ඉතා ඉක්මනින් ලේඛනගත කර ඇත. මූලික වශයෙන්, එය ස්විෆ්ට් හි කේත පේළි කිහිපයකි, එය Apple TV හි පමණක්, සම්පූර්ණ තිර වස්තුවක් නිර්මාණය කර යෙදුමේ ප්රධාන කොටස පූරණය කරයි, එය දැනටමත් JavaScript වලින් ලියා ඇත.
ගැටලුව දෙක: TVML යෙදුම් ඇත්ත වශයෙන්ම වෙබ් පිටුවකට බෙහෙවින් සමාන වන අතර එම නිසා සියලුම කේතය අන්තර්ජාලයෙන් ද පටවනු ලැබේ. යෙදුම ඇත්ත වශයෙන්ම "බූට්ලෝඩරයක්" පමණි, එහි අඩංගු වන්නේ අවම කේතයක් සහ වඩාත් මූලික ග්රැෆික් මූලද්රව්ය (යෙදුම් නිරූපකය සහ ඒ හා සමාන) පමණි. අවසානයේදී, මම ප්රධාන ජාවාස්ක්රිප්ට් කේතය කෙලින්ම යෙදුමට ඇතුළත් කළ අතර ඇපල් ටීවී අන්තර්ජාලයට සම්බන්ධ නොවූ විට අවම වශයෙන් අභිරුචි දෝෂ පණිවිඩයක් පෙන්වීමට හැකියාව ලැබුණි.
තුන්වන කුඩා ගැටළුව: iOS 9 සහ එය සමඟ tvOS අන්තර්ජාලයට සම්බන්ධ සියලුම සන්නිවේදනයන් HTTPS හරහා සංකේතනය කළ යුතුය. මෙය iOS 9 හි සියලුම යෙදුම් සඳහා හඳුන්වා දුන් විශේෂාංගයක් වන අතර එයට හේතුව පරිශීලක පෞද්ගලිකත්වය සහ දත්ත ආරක්ෂාව මත ඇති පීඩනයයි. එබැවින් වෙබ් සේවාදායකයේ SSL සහතිකයක් යෙදවීමට අවශ්ය වනු ඇත. එය වසරකට ඩොලර් 5 (ඔටුනු 120) වැනි සුළු මුදලකට මිලදී ගත හැකිය, නැතහොත් ඔබට භාවිතා කළ හැකිය, උදාහරණයක් ලෙස, ස්වයංක්රීයව සහ ආයෝජනයකින් තොරව HTTPS ගැන සැලකිලිමත් වන CloudFlare සේවාව. දෙවන විකල්පය නම් යෙදුම සඳහා මෙම සීමාව අක්රිය කිරීමයි, එය දැනට කළ හැකි නමුත් මම එය අනිවාර්යයෙන්ම නිර්දේශ නොකරමි.
ලියකියවිලි කියවීමෙන් පැය කිහිපයකට පසු, තවමත් ඉඳහිට සුළු දෝෂ ඇති විට, මම ඉතා මූලික නමුත් වැඩ කරන යෙදුමක් සකස් කළෙමි. එය "Hello World" යන ජනප්රිය පෙළ සහ බොත්තම් දෙකක් ප්රදර්ශනය කළේය. මම පැය දෙකක් පමණ ගත කළේ බොත්තම ක්රියාකාරී වීමට සහ ඇත්ත වශයෙන්ම යමක් කිරීමට උත්සාහ කිරීමයි. නමුත් උදේ පාන්දර සලකා බැලීමේදී, මම නිදා ගැනීමට කැමති විය ... එය හොඳ දෙයක් විය.
පසුගිය දිනක, Apple වෙතින් සෘජුවම සූදානම් කළ නියැදි TVML යෙදුමක් බාගත කිරීමේ දීප්තිමත් අදහසක් මට තිබුණි. කේතය තුළ මා සොයන දේ ඉතා ඉක්මනින් සොයා ගත් අතර බොත්තම සජීවීව සහ ක්රියාත්මක විය. වෙනත් දේ අතර, මම අන්තර්ජාලයේ tvOS නිබන්ධනයේ පළමු කොටස් දෙක ද සොයා ගතිමි. සම්පත් දෙකම ගොඩක් උදව් කළා, ඒ නිසා මම නව ව්යාපෘතියක් ආරම්භ කර මගේ පළමු සැබෑ යෙදුම ආරම්භ කළා.
පළමු සැබෑ යෙදුම
මම සම්පූර්ණයෙන්ම මුල සිටම ආරම්භ කළෙමි, පළමු TVML පිටුව. වාසිය නම්, Apple විසින් සංවර්ධකයින් සඳහා සූදානම් කළ TVML සැකිලි 18 ක් සකස් කර ඇති අතර ඒවා ලේඛනයෙන් පිටපත් කළ යුතුය. එක් සැකිල්ලක් සංස්කරණය කිරීමට පැයක් පමණ ගත විය, මූලික වශයෙන් මම Apple TV වෙත අවශ්ය සියලු දත්ත සමඟ නිමි TVML යැවීමට අපගේ API සූදානම් කරමින් සිටි නිසා.
දෙවන අච්චුව සඳහා ගත වූයේ විනාඩි 10 ක් පමණි. මම ජාවාස්ක්රිප්ට් දෙකක් එකතු කර ඇත - ඒවායේ ඇති බොහෝ කේත කෙලින්ම පැමිණෙන්නේ ඇපල් වෙතින් වන අතර, ඇයි රෝදය නැවත සොයා ගන්නේ. Apple විසින් නිර්දේශිත අන්තර්ගත පැටවීමේ දර්ශකය සහ විය හැකි දෝෂ සංදර්ශකය ඇතුළුව TVML සැකිලි පැටවීම සහ ප්රදර්ශනය කිරීම ගැන සැලකිලිමත් වන ස්ක්රිප්ට් සකස් කර ඇත.
පැය දෙකකටත් අඩු කාලයකදී, මට ඉතා හිස් නමුත් ක්රියාත්මක වන PLAY.CZ යෙදුමක් එක් කිරීමට හැකි විය. එයට ගුවන්විදුලි මධ්යස්ථාන ලැයිස්තුවක් ප්රදර්ශනය කළ හැකිය, එයට ප්රභේද අනුව එය පෙරීමට හැකි අතර එය ගුවන්විදුලිය ආරම්භ කළ හැකිය. ඔව්, ගොඩක් දේවල් ඇප් එකේ නැහැ, නමුත් මූලික දේවල් වැඩ කරනවා.
[youtube id=”kLKvWC-rj7Q” width=”620″ height=”360″]
වාසිය නම් යෙදුම මූලික වශයෙන් ජාවාස්ක්රිප්ට් මගින් බල ගැන්වෙන වෙබ් අඩවියේ විශේෂ අනුවාදයකට වඩා වැඩි දෙයක් නොවන අතර ඔබට පෙනුම වෙනස් කිරීමට CSS භාවිතා කළ හැකිය.
Apple තවමත් සූදානම් කිරීමට තවත් දේවල් කිහිපයක් අවශ්ය වේ. යෙදුම් නිරූපකය එකක් නොවේ, නමුත් දෙකක් - කුඩා සහ විශාල. නවකතාව නම්, නිරූපකය සරල රූපයක් නොව, පරාල ආචරණයක් අඩංගු වන අතර එය ස්ථර 2 සිට 5 දක්වා (පසුබිම, මැද සහ පෙරබිමෙහි ඇති වස්තූන්) සමන්විත වේ. යෙදුම පුරා ඇති සියලුම සක්රිය පින්තූර එකම බලපෑම අඩංගු විය හැක.
සෑම ස්ථරයක්ම ඇත්ත වශයෙන්ම විනිවිද පෙනෙන පසුබිමක රූපයක් පමණි. Apple විසින් මෙම ස්ථර රූප සම්පාදනය කිරීම සඳහා තමන්ගේම යෙදුමක් සකස් කර ඇති අතර Adobe Photoshop සඳහා අපනයන ප්ලගිනයක් ඉක්මනින් නිකුත් කිරීමට පොරොන්දු වේ.
තවත් අවශ්යතාවයක් වන්නේ "Top Shelf" රූපයකි. පරිශීලකයා යෙදුම ඉහළ පේළියේ (ඉහළ රාක්කයේ) ප්රමුඛ ස්ථානයක තැබුවහොත්, යෙදුම යෙදුම් ලැයිස්තුවට ඉහළින් ඩෙස්ක්ටොප් සඳහා අන්තර්ගතය ද සැපයිය යුතුය. සරල පින්තූරයක් තිබිය හැකිය, නැතහොත් එය ක්රියාකාරී ප්රදේශයක් විය හැකිය, උදාහරණයක් ලෙස ප්රියතම චිත්රපට ලැයිස්තුවක් හෝ, අපගේ නඩුවේදී, ගුවන් විදුලි මධ්යස්ථාන.
බොහෝ සංවර්ධකයින් නව tvOS හි හැකියාවන් ගවේෂණය කිරීමට පටන් ගෙන ඇත. ශුභාරංචිය නම් අන්තර්ගත යෙදුමක් ලිවීම ඉතා පහසු වන අතර, TVML සමඟ සංවර්ධකයින් සඳහා Apple බොහෝ දුර ගොස් ඇත. යෙදුමක් තැනීම (උදාහරණයක් ලෙස PLAY.CZ හෝ iVyszílő) පහසු සහ වේගවත් විය යුතුය. නව ඇපල් ටීවී විකිණීමට යන විට එකවර යෙදුම් විශාල ප්රමාණයක් සූදානම් වීමට හොඳ අවස්ථාවක් තිබේ.
දේශීය යෙදුමක් ලිවීම හෝ iOS සිට tvOS වෙත ක්රීඩාවක් ගෙනයාම වඩාත් අභියෝගාත්මක වනු ඇත, නමුත් එතරම් නොවේ. විශාලතම බාධකය වනුයේ විවිධ පාලනයන් සහ එක් යෙදුමකට 200MB සීමාවකි. ස්වදේශීය යෙදුමකට ගබඩාවෙන් බාගත කළ හැක්කේ සීමිත දත්ත කොටසක් පමණක් වන අතර අනෙක් සියල්ල අතිරේකව බාගත කළ යුතු අතර පද්ධතිය මෙම දත්ත මකා නොදමන බවට සහතිකයක් නොමැත. කෙසේ වෙතත්, සංවර්ධකයින් නිසැකවම මෙම සීමාව සමඟ ඉක්මනින් කටයුතු කරනු ඇත, iOS 9 හි කොටසක් වන "App Thinning" නම් මෙවලම් කට්ටලයක් තිබීමට ස්තූතිවන්ත වේ.
ලස්සන ලිපියක්. ස්තුතියි. සමහර විට කාලයාගේ ඇවෑමෙන්, මම සංවර්ධකයෙකු නොවී iOS සඳහා FileMaker සමඟ කළ හැකි පරිදි සරල යෙදුම් (විසඳුම්) සකස් කිරීම සඳහා පරිශීලක විසඳුමක් ද අපි ඇපල් වෙතින් දකිමු.
න්යායිකව... Swift loader යනු තවමත් එකම පේළි කිහිපයකි, පළමු TVML ගොනුව සඳහා URL පමණක් වෙනස් වේ. යමෙකුට අවශ්ය නම්, ඔවුන්ට ඔබගේ URL සමඟ දුරස්ථව ගොඩනැගීමක් ධාවනය කර IPA ගොනුවක් ආපසු එවිය හැකි ස්ක්රිප්ට් එකක් ලිවිය හැක. නැත්තම් mac එකක් තියනවනම් project එක යවන්න අවුලක් නෑ, එතන URL එක දාලා build එක පටන් ගන්න. වාසිය වන්නේ TVML යෙදුමෙන් පිටත නම්, ඔබට සැබවින්ම අවශ්ය වන්නේ එක් පොදු ගොඩනැගීමක් සහ සමහර විට එක් පුද්ගලික (සංවර්ධන) ගොඩනැගීමක් පමණක් වන අතර, ඔබට TVML වෙනස් කළ හැක්කේ සේවාදායකයේ සහ ඒ අනුව යෙදුමේ ක්රියාකාරිත්වය පමණි.
"යෙදුම tvOS-පමණක් විය හැක, නැතහොත් 'එක ප්රමාණයට ගැලපෙන' යෙදුමක් නිර්මාණය කිරීමට පවතින iOS යෙදුමකට කේතය එක් කළ හැක - අද iPhone සහ iPad යෙදුම් වලට සමාන ආකෘතියකි."
මම කල්පනා කරන්නේ ඔබ අදහස් කරන්නේ කුමක්ද? පුද්ගලිකව, විශ්වීය iPhone, iPad සහ Apple TV ඇතුළත් වන 1 ගොඩනැගීමට ක්රමයක් මම කොතැනකවත් සොයාගෙන නැත.. ඒවා වෙනම SDK (OSX වලට සමාන) බැවින් ඔබට tvOS සඳහා අමතර ඉලක්කයක් අවශ්ය වන අතර ඒ අනුව වෙනම ගොඩනැගීමක්ද අවශ්ය වේ. මට යමක් මග හැරී තිබේද?
Xcode 7.1 හි tvOS යෙදුම් දැනටමත් පවතින ව්යාපෘතියකට තවත් ඉලක්කයක් ලෙස එක් කළ හැක - Apple Watch සඳහා යෙදුම් වලට සමාන හෝ සමහර විට දැනුම්දීම් මධ්යස්ථානය සඳහා විජට් එකක්. කෙසේ වෙතත්, එය ගබඩාවට උඩුගත කරන්නේ කෙසේදැයි මම තවමත් නොදනිමි... Xcode එක පැකේජයක් එවනු ඇති අතර App Store එය බෙදනු ඇතැයි මම උපකල්පනය කරමි... බොහෝ විට ඔවුන් දැන් ඔරලෝසුවෙන් කරන දෙයට සමාන වේ.
noo.. මගේ අදහස නම් මේවා සම්පූර්ණයෙන්ම වෙනස් දේවල් 2ක්.. watch කියන්නේ extension එකක්.. නැත්තම් watchOS 2.0 වෙනකන්.. iOS ටාගට් එකත් එක්ක එකට දීලා iPhone එකක්වත් නැතුව වැඩ කළේ නෑ.. ATV කියන්නේ වෙනම entity එකක්.. ඒක තමයි මම කතා කරන්නේ , ATV එකට build එක වෙනම වෙනවද (2$ ගෙවන්න ඕනේ) ඊට අමතරව iOS 2$ ගෙව්වද, නැත්නම් universal එකක් දෙන්න පුලුවන් වෙයිද iOS සහ ATV යන දෙකම සඳහා 2$ ගොඩනඟන්න. ATV සඳහා පවුල..
එබැවින් සැබෑ දියත් කිරීම පෙන්වනු ඇත, නමුත් එය ඇත්ත වශයෙන්ම Apple Watch කේතයට සමාන ලෙස හැසිරේ, උදාහරණයක් ලෙස. එසේ නොමැතිනම්, දැනට පවතින යෙදුමට tvOS සඳහා කේතය එක් කිරීමට හැකි වනු ඇති බව ලේඛනයේ සඳහන් වන අතර එමඟින් iOS සහ tvOS යන දෙකටම එකවර එක් යෙදුමක් (App Store හි එක් ආයතනයක්) විකිණීමට හැකි වනු ඇත - එක් මිලදී ගැනීමක් සඳහා පාරිභෝගිකයා, හෝ වෙනම ආයතනයක් ලෙස - iOS සහ tvOS සඳහා වෙනම මිලදී ගැනීමක්.
පැහැදිලි කිරීම සඳහා, එය යෙදුමකට 200MB නොවේ, නමුත් 200MB දේශීයව ගබඩා කර ඇති අතර ඉතිරිය අවශ්ය විට ජාලයෙන් බාගත කර ඇත.
ස්තූතියි, ඒක තමයි මම හිතුවේ, නමුත් මම ඒක වැරදි වචනවලින් කියන්න ඇති. 200MB ට වැඩි (හෝ අමතර වශයෙන් බාගත කර ඇති සියල්ල) හැඹිලියක් ලෙස ගබඩා කර ඇති අතර පද්ධතිය එහි ඉඩ මදි බව තීරණය කරන්නේ නම්, එය මකා දැමීමට පටන් ගනී - ප්රමාණවත් නිදහස් ඉඩක් සහ පසුව අවම වශයෙන් භාවිතා කරන අන්තර්ගතයක් ඇති තෙක් එය බොහෝ විට සිදු නොවනු ඇත. මකා දැමෙනු ඇත, එබැවින් එය ප්රායෝගිකව එය බොහෝ විට ගැටලුවක් නොවනු ඇත.
මට තවත් සොයා ගැනීමට ඇත්තේ කුමක්ද, මෙම සීමාව ක්රීඩා සඳහා අදාළ නොවනු ඇත, හෝ ක්රීඩාව පාදමේදීම 200MB ට වඩා විශාල විය හැක. නමුත් මෙය හරියටම අදහස් කරන්නේ කෙසේදැයි මම තවමත් හරියටම නොදනිමි. සංවර්ධකයින්ගේ ප්රතිපෝෂණ අනුව Apple තවමත් මෙම ප්රතිපත්තිය සකස් කරමින් සිටින බව බොහෝ දුරට ඉඩ ඇත.
hehe Pokemon TCG – 4 GB, අවුල් ඔන්ලයින් ඇණවුම් කරන්න – 1,6 GB Hearthstone 1,3 GB මම ඇත්තටම මේ ගැන කුතුහලයෙන් සිටිමි.
ක්රීඩා වලට විශේෂ මාදිලියක් ඇති බවට තොරතුරු තිබුණි. මම දැන් විස්තර එකතු කරමින් සිටින අතර අපි ලිපිය සම්පූර්ණ කරන්නෙමු.
මට එය කළ නොහැක, මම යමෙකුගේ සිත් රිදවූයේ නම් මම කල්තියා සමාව අයදිමි, නමුත් මට ඔබ සමඟ බෙදා ගැනීමට අවශ්ය වූ විශාල, අවංක සහ සැබෑ සතුටක් ඇත.
නව ඇපල් ටීවී නිවේදනය කිරීමෙන් පසු දින, මම කම්මැලි නොවී ඇපල් ලොතරැයියට අත්සන් කළෙමි (මම තෝරා ගන්නේද?) එය විකිණීමට පෙර පවා සංවර්ධක කට්ටලයක් ලබා ගැනීමේ හැකියාව ඇත.
ඊයේ සවස, ඇපල් මට ලිව්වා එය පළමු කණ්ඩායම සඳහා මාව තෝරාගත් බව :)
එබැවින්, මම මෙම ලිපියේ කතුවරයාට සමාන නොවන අතර, මම අවංකව Apple TV සඳහා Preschool Brasnicce හි වැඩ කරමි - ඔක්තෝබර් මාසයේදී ඔබේ App Store වෙතින් ලබා ගත හැක :)
ඉතින් මට හැගීමක් තියෙනවා ලියාපදිංච් වුන හැමෝටම සමහරවිට ඒක ලැබුනා කියලා :)මමත් ඊයේ ඕඩර් කලා ඇත්තටම මමත් ගොඩක් ආසාවෙන් බලන් ඉන්නවා... ඒ වගේම මම දන්න තව කෙනෙක් එයාගේ ඩිලිවරි එක එනකන් ඉන්නවා...
කෙසේ වෙතත්, විකුණුම් ආරම්භ වන විට බොහෝ යෙදුම් බොහෝ විට ඇති බව පෙනේ :)
හැමෝම බොහෝ විට එසේ නොවේ - ඔවුන් එය මට දුන්නේ නැත :(
:( මට ඔබ ගැන කණගාටුයි.
කවුරුහරි කැමති නම්, මට සුදු ඇපල් ස්ටිකර් අටක් තියෙනවා... මට ඒවා තැපැල් කරන්න පුළුවන්...