三星智能电视应用程序

9

我们能用.NET创建三星智能电视的应用吗?

如果不能,那么我们可以使用哪些语言来创建呢?我猜Adobe AIR是其中之一。

10个回答

21

下载三星电视应用程序SDK,并使用SDK中包含的“应用程序编辑器”和“可视化编辑器”创建程序。

在可视化编辑器中,您可以创建可在程序中使用的场景。一个场景可以包含来自工具栏的组件,如文本框、列表框等,以下组件是预定义的:

  • 按钮:处理按钮事件
  • 复选框:提供一个复选框按钮以选择选项
  • 日期选择器:允许用户选择日历日期
  • 帮助栏:在屏幕底部显示一个960像素宽的栏
  • 图像:显示一张图片
  • 输入框:提供一个空白区域,用户可以在其中输入文本
  • 标签:显示一个简单的字符串
  • 列表框:垂直列表
  • 加载图片:显示等待图片,如网络加载等情况
  • 弹出窗口:显示一个带有确定按钮的弹出消息
  • 弹出窗口(确定,取消):显示一个带有确定和取消按钮的弹出消息
  • 滚动条:在列表上显示当前选定的位置
  • 视频:提供电影播放/音量按钮

对于每种类型的组件,都有一个XML文件来定义其默认属性和参数。这包括组件的缩略图像、默认大小、调整大小选项等。当您从组件面板将组件拖到编辑窗口时,根据XML文件中的元素创建组件的一个实例。然后在可视化编辑器中可以调整这些属性,以适应特定实例。

在应用程序编辑器中,您将导入场景并绑定它们与代码一起制作功能程序。您将使用CSS和JavaScript。您可以在模拟器中运行程序,并使用日志管理面板跟踪错误。 输入图像描述

所有智能电视应用程序实际上都是运行在包含应用程序的服务器上的html应用程序。 电视会下载和安装一小部分内容(图标和其他一些信息,有时还会下载媒体以便快速访问),但似乎您无法在没有电视连接互联网的情况下运行程序,因此看起来需要连接并从源运行。

我尚未成功上传项目以在我的智能电视上运行,所以任何已完成此操作的人,请在此处输入更多信息。

三星电视应用程序SDK
三星电视应用程序SDK(SDK)可从三星开发者论坛“应用指南”菜单下的SDK和工具部分下载。 它目前仅与Windows操作系统兼容。请在www.samsungdforum.com/eu注册以下载它。


这个可视化编辑器在2015 IDE中还存在吗?我找不到它,也没有相关的参考资料。 - jdc

4

据我深入研究三星文档所得,您可以使用以下方法开发应用程序:

  • JavaScript
  • Adobe Flash/AIR(只适用于Flash Player v.9)
  • 还有一个针对LUA语言的api,但我尚未尝试

自2012年的型号开始,不再支持LUA - Adam Lukaszczyk
你有没有偶然间找到任何关于LUA已经被移除的链接或其他信息?我找不到任何相关信息,就像我也找不到任何支持它的信息一样。 - quetzalcoatl

3

你可以使用 .Net 开发应用程序,只需从小部件重定向 location.href="您的服务器地址"。

但是,在三星 SDK 中,他们强烈谴责这种方法。因此,在采取此方法之前,请与三星人员联系并寻求事先许可,否则您的应用程序将被三星 QA 团队拒绝。


1

我认为这是可能的,因为当您构建JavaScript项目时,只有HTML、CSS和JS文件可供编码。问题在于智能电视嵌入的JS文件。在项目中,它们被引用为

    <script type='text/javascript' language='javascript' src='$MANAGER_WIDGET/Common/API/TVKeyValue.js'></script>

如果你从三星的IDE文件夹中找到这些JS文件,你可以像其他HTML JavaScript项目一样正常引用它们,然后在安装到电视上时将它们改回来。
但我建议使用三星的IDE,编写JavaScript并不那么难。

1
小部件本身可以使用三星应用程序 SDK 创建并安装在电视上。但是,一旦安装了小部件,该小部件可以从 Web 加载内容。 因此,小部件内发生的所有事情实际上都可以是 .Net Web 应用程序,因此您可以几乎全部使用 .Net 进行开发。

1

我不确定.NET是否适用于开发三星智能电视应用,

但您可以查看三星智能电视应用程序开发人员的官方网站。 http://www.samsungdforum.com

我认为这可能对您有所帮助。 (我引用了三星D论坛的话)

*开发* 下载最新版本的SDK以开始开发三星智能电视应用程序 开发人员可以在三星D论坛上找到三星提供的各种版本的SDK包。 三星提供了各种文档和示例教程,以使用三星平台API创建不同的应用程序。 在开发应用程序时,如果用户想要添加应用程序推送功能,则需要提前申请Auth密钥。 三星应用程序推送支持通知消息和控制消息。


0

.NET只能在Windows操作系统上运行,所以我的答案是否定的。我也不认为MONO被移植到电视上运行...

但是,如果你想创建应用程序,你应该查看三星提供了哪些API并搜索SDK...


不要说“仅限于Windows”,因为正如你自己刚才所说,我们有MONO。而且实际上,三星智能电视是基于Linux的。 - quetzalcoatl
1
我在谈论编译器,.NET的CLR和JIT编译器只能在微软的生态系统中运行。Mono项目构建了自己的编译器以在其他平台上运行msil。但是,如果你说智能电视是基于Linux的,那么唯一的问题将是设置mono的麻烦。 - Mihai Popescu
请将您的回复合并到您的答案中。然后我就可以取消踩和评论了。 - quetzalcoatl

0

您可以使用像JavaScript和Flash这样的语言开发应用程序。在最新的SDK(2014)中,您甚至可以使用C++开发本地应用程序。


0

我已经在三星智能电视上开发了一个应用程序,它完全使用Web技术(HTML、PHP、JavaScript、CSS...)完成。你也可以使用Eclipse进行开发!实际上,三星会建议下载带有插件的Eclipse。


嗨,只是想问一下,三星的QA团队是否通过了您的应用程序,并且您能够启动它吗? - abhi
嗨 @abhi,我没有把我的应用提交给三星。这只是一个实习项目。 - Hassen Ch.
好的,根据我的知识和经验,三星不允许服务器托管的应用程序,并且在质量保证过程中会拒绝这些应用程序。 - abhi

0

据我所知,原生应用程序不行。但是间接地可以实现。

三星智能电视有一个浏览器,我相信它是基于Chrome的(只是看到了一个简短的提及,还不确定是否属实)。

因此,您可以使用.NET进行开发,在Azure上进行托管,然后三星智能电视就可以使用它。

这不是通过应用商店销售的东西 - 如果适当的话,您需要在应用程序中提供某种订阅服务。

另外,据我所知,SSTv没有提供本地选项来进行数据库存储,因此如果您需要,您需要在其他地方使用数据库服务器。

在我看来,SSTv应用最好与外部Web应用/服务配对使用,可以在任何平台上运行。但是,运行在电视上的原生应用程序需要在其IDE中进行开发,该IDE不支持.NET环境。

我正在基于C#/MVC/Azure/SQL Azure/jquerymobile进行一个新项目的开发 - 这对我来说都是全新的技术,从我的COBOL/VB根源来看,这是一个巨大的学习曲线。

让父母在他们的新三星智能电视上使用网络浏览器进行检查,大部分都可以正常工作。

Cookie可能是一个问题。

通过遥控器导航可能不如预期那样直观,但是父母已经70多岁了,所以他们的技术直觉也可能不太快 :-)

如果您希望它在SSTv上运行,如果您想在.net环境中进行大量开发,则混合方法可能是最好的选择。

Greg


并非所有的设备都有浏览器。我的智能电视和带有Smart Hub的蓝光播放器没有可用的浏览器,也没有可以下载的浏览器应用程序,据我所知... - Stefan
@Stefan 整个智能中心都驻留在浏览器中(但是假设在全屏模式下)。 - Adam Lukaszczyk
@Dobiatowski,这可能是事实,但并不意味着你可以用它来发布一个网页应用到这个设备上,因为它被锁定在HUB上。这个设备必须有一个浏览器应用程序,你才能上网使用上面的提示,而我的两个设备都没有这个功能,我是在一个月前(蓝光)和六个月前(电视)购买的。 - Stefan
@Stefan 是的,但是由于您使用HTML/JavaScript创建应用程序,因此可以将iframe放置到index.html中,以打开远程服务器网页。另一件事是如何处理其中的导航;)但最终是可能的。 - Adam Lukaszczyk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接