【问题标题】:TVML vs Custom App for Apple TVOSTVML 与 Apple TVOS 的自定义应用程序
【发布时间】:2016-02-06 06:58:24
【问题描述】:

与 Apple TVOS 的自定义应用程序(基于媒体的应用程序而不是游戏)相比,使用 TVML 有什么优势吗?从我从 Apple 的文档中读到的内容中,我无法找出任何这样的优势(尽管它主要谈论的是 TVML/TVJ)。

对于 iOS(Swift、Objective C)开发人员来说,使用自定义似乎更容易、更快并且有更多可能性。

我认为 Apple 提供的任何模板都可以使用 UIKit 构建,因为它在内部是 UIKit。对吧?

[更新]

让我重新表述我原来的问题,因为到目前为止的答案没有给出任何支持自定义应用程序的分数。我同意@shirefriendship 有一些支持TVML 的真正有效点(最大的一点是-> 应用程序更改可能没有应用程序更新)。与 TVML 相比,使用自定义有什么优势吗?就像 TVML 无法触及的任何东西一样?

【问题讨论】:

    标签: tvos apple-tv


    【解决方案1】:

    已经使用 TVML/JS 构建了一个应用程序,现在正在开发一个本地应用程序,我会说 Javascript 选项更多地针对初学者或基本应用程序。

    TVML 应用程序提供了一种更简单、更快捷的方式来构建具有通用功能/用户界面的标准应用程序。我们用它来快速构建应用程序的原型。现在我们已经启动了这个应用程序并且它得到了一些提升(在 What to Watch 和 Top Free Apps UK 中有特色),我们现在正在本地重建它以添加额外的功能,例如分析、崩溃报告、自定义界面和其他位以增加 re - 流通和定制推荐。

    @shirefriendship 的回答很好地解释了 TVML 应用程序的好处,我认为这对于初学者、原型应用程序甚至基本应用程序来说都是一个不错的选择。

    原生应用程序可以更好地控制应用程序的外观、工作方式和感觉。访问大多数 iOS SDK 后,您可以做更多事情,例如集成 Cloudkit、开发 2D 和 3D 游戏等等。

    一旦我们完成了原生 TV 应用程序的开发,我将使用更多信息更新答案,例如两个不同版本之间的开发时间、应用程序中的功能等。

    更新:要回答您的第二个问题,是的,您几乎可以使用 UIKit 开发任何用户界面/模板,TVML 模板提供了常用/非常方便的用户界面。使用 UIKit,您可以复制或自定义任何预定义的模板或构建全新的东西。

    【讨论】:

    • 很有帮助。等你完成你的原生App并更新:)
    • 谢谢,我们将在下周大力推动它。有一些有用的信息会尽快更新。
    • @Scriptable - 我正计划构建一个类似于 Netflix、Hulu 的应用程序。您建议我应该使用 TVML 还是自定义原生应用程序? .我确实理解 TVM 对原型和基本应用程序有好处的事实。我确实同意,如果我们想在应用程序上添加更多控制,我们应该选择 Native 应用程序。既然你在这两个方面都有经验,你能分享一下我现在应该选择哪一个吗?另外,如果您使用的是 TVML,您是否可以控制语音搜索,因为对于本机,我看不到 siri 尚未对开发人员开放。
    • @iWorld 如果您对它感到满意,我会坚持使用原生,这为您在开发过程中提供了更多选择,允许您使用外部库和自定义接口。我们的项目被推迟了,所以我们在 1 月初将其恢复,并整合了崩溃报告、分析、广告、自定义推荐模块和其他一些东西。 Siri 还没有向开发者开放,我自己研究过这个,不幸的是我不确定我们能不能访问这个。更有可能为 Siri 提供用于索引的对象。
    • 我实际上并没有注意到,不,我们在商店中的当前应用程序正在使用 TVML,而且我之前还没有从 Siri 的视频中获得结果,我会玩一下它。 Siri 知道如何为视频编制索引的唯一方法是使用 TVContentItem 类型,也许它会在使用时自动编制索引?
    【解决方案2】:

    确实,您可以更灵活地使用自定义 UIKit 代码。如果有足够的时间,您可能会创建一个行为类似于 TVML/TVJS 应用程序的应用程序......但为什么要重新发明轮子呢?

    即使您主要是 Swift/Obj-C 开发人员,使用 TVML 模板也有一定的优势。

    1. TVML 模板为用户提供熟悉的体验。你 曾经使用过 Netflix TV 应用程序、HBO GO 或 iTunes?他们都使用 TVML 模板并具有独特的外观和感觉。这大大缩短了设计时间。
    2. 模板非常容易实现,即使很少 JavaScript 经验。自动布局为您处理。懒惰的 自动加载图像。每个 UI 的行为 屏幕上的元素已经被 Apple 处理好了。
    3. 模板结构化但可自定义。模板是插件 和玩,但您仍然可以自定义 UI 的某些方面 元素Styles and Attributes
    4. 您可以在 Web 服务器上托管您的 TVML/TVJS 文件。这让你 无需用户下载即可对您的应用进行更改 更新到您的应用。
    5. 您可以将 TVML 与自定义 UIKit 混合搭配。有时想要使用 UIKit 自定义行为,但对于标准视图,您更喜欢模板?为什么选择?您可以在同一个应用程序中同时拥有这两者。在这里查看我的回答,描述如何:How To Mix UIKit and TVML Within One App

    如有疑问,请尝试一下!使用来自 Apple 的 Catalog App,看看您是否喜欢 TVML 模板。你可能会感到惊讶。

    【讨论】:

    • 使用TVML有什么好处?像 TVML 无法触及的任何东西?
    • 仅供参考,Netflix 使用的是 Objective-c,而不是 swift 或 tvml(可能是该应用程序的第一个版本)
    【解决方案3】:

    MSK

    TVML 的主要优势在于它全是 javascript,吸引了更广泛的开发人员。

    不确定您关于通过 UIKit 开发模板的第二个问题

    【讨论】:

    • 是的,弗兰克,这很明显。我想知道这是否是 TVML 背后的唯一原因,还是 Apple 正在推广自定义(媒体)应用程序。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-06
    相关资源
    最近更新 更多