标签: apple-tv

如何将iOS应用程序扩展到tvOS

我有一个iOS应用程序,我需要扩展到tvOS.我找到的所有信息都在解释如何从头开始!有没有办法将我的应用程序扩展到tvOS,或者我应该用它开始一个新项目?

Update1: 我的问题是:如何扩展我现有的项目以支持tvOS而无需从头开始构建它?

Update2: Jess Bower指向Apple的网站:

通过在App Store上为您的应用程序实现通用购买,使客户能够通过一次购买在iOS和新Apple TV上享受他们喜爱的应用程序.

这意味着我们需要在现有项目上创建一个新的捆绑包并启用"通用"购买,因此它将被视为App Store上的一个应用程序.

ios apple-tv tvos

58
推荐指数
7
解决办法
3万
查看次数

tvOS TVML应用程序中的自定义字体

有没有办法在Apple tvOS TVML基础应用程序中使用自定义字体?我试过这个@font-face规则无济于事.

<document>
<head>
    <style>
      @font-face {
        font-family: 'My Awesome Font';
        font-weight: 600;
        src: url("${this.BASEURL}/resources/fonts/awesome-font-bold.otf"); 
      }
    </style>
</head>
...
</document>
Run Code Online (Sandbox Code Playgroud)

apple-tv tvos tvml

26
推荐指数
1
解决办法
1210
查看次数

如何在Apple TV上播放视频?

我开始了一个空白的tvOS项目并创建了以下代码:

- (void)viewDidLoad  
{  
    [super viewDidLoad];  

    AVPlayer *avPlayer = [AVPlayer playerWithURL:[NSURL URLWithString:@"http://www.myurl.com/myvideo.mp4"]];  
    AVPlayerLayer *avPlayerLayer = [AVPlayerLayer playerLayerWithPlayer:avPlayer];  

    avPlayerLayer.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);  
    [self.view.layer addSublayer:avPlayerLayer];  

    [avPlayer play];  
}  
Run Code Online (Sandbox Code Playgroud)

一旦应用加载,模拟器中没有任何事情发生.没有视频,没有,只是我的Apple TV模拟器中的空白半透明屏幕.

从HTTP源播放Apple TV应用程序的应用程序启动示例视频的正确方法是什么?

xcode apple-tv tvos

22
推荐指数
4
解决办法
2万
查看次数

tvOS中的Web应用程序

Apple 昨天发布了苹果电视SDK.

大多数电视应用都是基于网络的(html,javascript和css),我想将现有的电视网络应用移植到tvOS.

Xcode中的SDK没有显示类似于iOS的Webview实现,用于创建基于html,javascript和css的应用程序,但是,根据文档,可以使用javascript使用tvjs框架,但是不是html,而是苹果拥有自己的标记语言电视称为TVML.

我的问题是:是否可以将现有的Web应用程序移植到tvOS(如何?),还是需要从头开始重新实现?

谢谢你的帮助.

html javascript web-applications apple-tv tvos

22
推荐指数
3
解决办法
1万
查看次数

在tvOS应用程序中使用iPhone作为游戏控制器?

在Apple TV宣布期间,Crossy Road的开发人员使用iPhone作为Apple电视游戏的第二控制器:

http://www.macrumors.com/2015/09/09/cooperative-play-for-crossy-road/

我的第一个想法是使用Multipeer Connectivity Framework实现这一点.但是,它不支持tvOS.有没有一种很好的方法可以在没有Multipeer Connectivity的情况下将iPhone连接到Apple TV?

更新:似乎我不能使用GameKit,因为GKPeerPickerController已从tvOS上的GameKit中删除.

objective-c ios apple-tv multipeer-connectivity tvos

21
推荐指数
3
解决办法
4669
查看次数

我可以在一个应用程序中混合使用UIKit和TVMLKit吗?

我在探索tvOS,我发现,苹果提供了很好的一套模板使用写入TVML.我想知道tvOS使用TVML模板的应用程序是否也可以使用UIKit.

我可以在一个应用程序中混合使用UIKit和TVMLKit吗?

我在Apple开发者论坛上发现了一个帖子,但它没有完全回答这个问题,我正在通过文档找到答案.

uikit apple-tv tvos tvml

17
推荐指数
3
解决办法
3532
查看次数

TVML与Apple TVOS的自定义应用程序

对于Apple TVOS,使用TVML而不是自定义应用程序(基于媒体的应用程序而非游戏)是否有任何优势?从我从Apple的文档中读到的,我无法弄清楚任何这样的优势(尽管它主要是关于TVML/TVJ).

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

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

[更新]

让我重新解释我原来的问题,因为到目前为止的答案没有给出任何支持自定义App的观点.我同意@shirefriendship有一些真正的有效点支持TVML(最大的一个是 - >应用程序更改可能没有应用程序更新).使用自定义优于TVML有什么优势吗?喜欢TVML无法触及的任何东西?

apple-tv tvos

16
推荐指数
2
解决办法
3569
查看次数

tvOS:无论如何都要阻止搜索键盘在滚动时崩溃?

所以我有一个标准设置,用于在我的tvOS应用程序中设置搜索视图.

let storyboard = UIStoryboard(name: "Main", bundle: nil)
guard let resultsController = storyboard.instantiateViewControllerWithIdentifier(SearchResultsViewController.storyboardIdentifier) as! SearchResultsViewController

let searchController = UISearchController(searchResultsController: resultsController)
searchController.searchResultsUpdater = resultsController
searchController.hidesNavigationBarDuringPresentation = false
searchController.searchBar.placeholder = NSLocalizedString("Enter keyword (e.g. iceland)", comment: "")

let searchContainer = CustomUISearchContainerViewController(searchController: searchController)
Run Code Online (Sandbox Code Playgroud)

当推入导航堆栈时,这是一个视图,其顶部有搜索栏,下面的结果如下所示

在此输入图像描述

因此,每当结果很大并且我必须滚动键盘时,只要我向上滚动并向上滑过最顶端的结果,键盘就会折叠并再次展开.有什么方法可以防止这种行为吗?我只是希望它一直保持开放状态.我想的可能是子类化UISearchController,但我不确定在那里甚至可以替换

uisearchbardelegate apple-tv swift uisearchcontroller tvos

16
推荐指数
1
解决办法
677
查看次数

是否有人反过来设计Apple的iOS Remote应用程序用于控制Apple TV over IP的协议?

我很好奇我是否可以编写可以控制Apple TV的程序,特别是运行tvOS 9.1.1的Apple TV第四代,就像Apple的iOS远程应用程序一样.我想发送命令,用于在四个主要方向导航,在屏幕上选择一个项目,向上导航堆栈 - 基本上是Apple的远程应用程序可以执行的操作.

有没有人对它使用的协议进行逆向工程?到目前为止,Cursory谷歌搜索已经产生了关于早期Apple TV和DAAP协议的过时结果,这些协议看起来与我想要的不同.

reverse-engineering remote-control apple-tv tvos

14
推荐指数
2
解决办法
8561
查看次数

Airplay,Apple TV和Remote Events - 仅用于流媒体音频/视频吗?

我的iPad应用程序使用此处讨论的技术向Apple TV呈现第二个UI - 即,检测并绘制到代表Apple TV的UIScreen:

http://developer.apple.com/library/IOs/#documentation/AudioVideo/Conceptual/AirPlayGuide/EnrichYourAppforAirPlay/EnrichYourAppforAirPlay.html

该文件还讨论了接收远程控制事件:

使用AirPlay时,您的媒体可能正在从主机设备的另一个房间播放.AirPlay输出设备可能有自己的控件或响应Apple遥控器.为了获得最佳用户体验,您的应用应该监听并响应远程事件,例如播放,暂停和快进请求.启用远程事件还允许您的应用响应插入主机设备的耳机或耳塞上的控件.

我已经实现了他们描述的方法,以便在我的应用程序和简单的测试项目中开始接收远程控制事件,但我无法检测到任何事件.当我使用直接插入iPad的耳机时,我没有收到任何事件,当我向Apple TV发送视图时,我没有收到任何事件.

我得出的结论是,实际上,拦截远程控制事件的唯一方法是将流媒体流式传输到Apple TV,而不是简单地呈现应用UI或镜像.

这种假设似乎是通过使用MixerHost示例应用程序(如下步骤测试支持http://developer.apple.com/library/ios/#samplecode/MixerHost/Introduction/Intro.html):

  1. 在iPad上启动应用程序,并启用了对Apple TV的镜像.
  2. 按遥控器上的"播放"按钮 - 没有任何反应.
  3. 按应用UI上的"播放"按钮,音乐开始通过Apple TV播放.
  4. 按遥控器上的"播放"按钮停止音乐,但音乐不会停止.
  5. 更改iPad上的Airplay路由,使其不再镜像,只是将音频发送到Apple TV.如果在"remoteControlReceivedWithEvent"上设置断点,并按遥控器上的"播放/暂停"按钮,则可能会捕获该事件.它是不一致的 - 在收到一个或两个事件后,它停止工作.

还有其他人在Airplay和遥控事件方面有更好的运气吗?建议?

iphone ios apple-tv

13
推荐指数
1
解决办法
2419
查看次数