2

我正在测试一个具有一些 CarPlay 功能的应用程序。我通过使用更改默认选项激活了模拟器中的 CarPlay 窗口

defaults write com.apple.iphonesimulator CarPlay -bool YES

Hardware -> External Displays -> CarPlay在启动 CarPlay 窗口时,无论是在调试中编译应用程序后模拟器自动启动时,还是在应用程序已经在模拟器中运行时手动打开 CarPlay 窗口时,它都能完美运行。问题在于,在这两种情况下,主模拟器窗口都会变暗(在显示 CarPlay 启动画面后,与此图像中手机上看到的类似)

现在,我不完全知道现实生活中的行为应该是什么,但我无法简单地在 CarPlay 窗口上执行“关闭”行为并切换回主模拟器窗口以便它显示应用程序(或其他任何相关的东西)。目前,如果我回到模拟器菜单并选择Hardware -> External Displays -> None,CarPlay 窗口就会消失,但主模拟器窗口会保持黑屏。

所以,我的问题是,如何在使用模拟器时模拟 CarPlay 的“关机”行为,以及如何在主模拟器窗口中恢复操作系统?在更侧重于开发的方面,我还想确切知道是否以及如何检测到 CarPlay 关闭时媒体播放器“关闭”,或者更具体地说,是否有一种方法可以以编程方式观察CarPlay 的媒体控制功能变得“不可用”的事件。

4

3 回答 3

1

我只能部分回答你的问题。要恢复应用程序本身或操作系统主窗口,只需按下(或模拟按下 Shift+Cmd+H)主页按钮。

于 2016-09-16T13:51:33.970 回答
0

如果您关闭 CarPlay 的模拟器窗口,则会向 CPApplicationDelegate 发出信号。

您需要您的 AppDelegate 符合此方法:

func application(_ application: UIApplication, didDisconnectCarInterfaceController interfaceController: CPInterfaceController, from window: CPWindow)

这应该与在真实设备上关闭 CarPlay 的情况相同。

于 2020-01-24T12:30:43.443 回答
0

CarPlay“关机”行为?没有这样的事。

如果用户断开与汽车的连接 - UI 就消失了。

如果您想在 CarPlay 会话中终止应用程序 - 只需将 iPhone 模拟器重新聚焦并解锁(通过点击主页按钮 = Cmd+Shift+H)。然后 iPhone 应该可以工作了。您应该会看到应用程序关闭。

于 2017-07-28T08:18:03.970 回答