电视的大多数应用程序都是基于Web的(html,javascript和css),我想将现有的电视Web应用程序移植到tvOS。
Xcode中的SDK没有显示像iOS中那样的Webview实现,无法创建基于html,javascript和css的应用,但是根据文档,可以使用tvjs框架使用javascript ,但是Apple拥有自己的标记语言,而不是html用于称为TVML的电视。
我的问题是:是否可以将现有的Web应用程序移植到tvOS(如何?),还是需要从头开始重新实现?
编辑:在人们继续投票之前,我要弄清楚在Apple TV上存在UIWebView,但是 禁止 使用它,因此,在Apple
TV上加载Web应用程序的唯一真正方法是使用TVML创建它们和TVJS
如果要使用UIWebView(作为概念证明),可以执行以下操作:
目标c
Class webviewClass = NSClassFromString(@"UIWebView");
id webview = [[webviewClass alloc] initWithFrame:self.view.frame];
NSURL * url = [NSURL URLWithString:@"https://www.google.com"];
NSURLRequest * request = [NSURLRequest requestWithURL:url];
[webview loadRequest:request];
[self.view addSubview:webview];
迅速
let webViewClass : AnyObject.Type = NSClassFromString("UIWebView")!
let webViewObject : NSObject.Type = webViewClass as! NSObject.Type
let webview: AnyObject = webViewObject.init()
let url = NSURL(string: "https://www.google.com")
let request = NSURLRequest(URL: url!)
webview.loadRequest(request)
let uiview = webview as! UIView
uiview.frame = CGRectMake(0, 0, view.frame.width, view.frame.height)
view.addSubview(uiview)
更新!
我发现在github上有很多基于的tvOS浏览器,但其中大多数都需要在Xcode应用程序上调整Availability.h。我发现了使用我的方法的叉子,因此不需要调整Availability.h
他们添加了对导航的基本支持,例如滚动和光标
我认为Apple不会批准使用UIWebView
被标记为禁止的应用程序,您必须学习TVML
而TVJS
不是。
homebridge-bravia-tvos v5 Creating and maintaining Homebridge plugins consume a lot of time and effort, if you would like to share your appreciation, feel free to "Star" or donate. Click here to revie
在 Web 服务器中 Web 应用程序的根目录是一个特定的路径。例如,一个catalog应用,可以位于 http://www.mycorp.com/catalog。以这个前缀开始的所有请求将被路由到代表 catalog 应用的 ServletContext 环境中。 servlet 容器能够制定Web应用程序自动生成的规则。例如,一个~user/映射可用于映射到一个基于/home /user/pu
我的应用程序具有apache模块提供的CSRF保护。我的应用程序包含几个允许上载一些文件的页面,如下所示: 当我们将apache版本从httpd-2.2.3更新到httpd-2.2.15时,所有的工作都很好。 我谷歌了一段时间,发现这个问题可能与我表单中的multipart/form-data参数有关。在这种情况下,表单发送不安全。我还发现Spring可以通过Spring doc的处理如上所述的内
我正在寻找一些关于为使用java运行的Web应用程序设置mongoDB的正确方法的建议。从mongoDB教程中,我了解到我应该只有一个Mongo类的实例。 Mongo类被设计成线程安全的,并在线程之间共享。通常,您只为给定的DB集群创建一个实例,并在应用程序中使用它。 所以我有一个单例提供者(我使用guice进行注入) 每当我必须在我的webapp中使用mongo时,我就会注入提供者并获得相同的m
在给定的包中,controller中的哪个类,哪个是View,哪个是controller。我有点搞不清把理论联系起来
Web 应用 Class Loader Servlet 容器是一个 Java EE 产品的一部分,不应该允许应用程序重写Java SE 或 Java EE 平台的类,比如那些在 Java. 和 javax. 命名空间中的类,Java SE 或 Java EE 不允许被修改。 Web 应用程序环境 Java EE 定义了一个命名的环境,允许应用程序在没有明确的知道外部信息是如何命名和组织的情况下轻松