CarPlay:从 Spotify 等移动设备的后台杀死应用程序时,如何从 CarPlay 装置关闭应用程序?

Posted

技术标签:

【中文标题】CarPlay:从 Spotify 等移动设备的后台杀死应用程序时,如何从 CarPlay 装置关闭应用程序?【英文标题】:CarPlay: How to close app from CarPlay unit when killing app from background in mobile device like Spotify? 【发布时间】:2021-08-30 06:33:07 【问题描述】:

我正在开发 Audio CarPlay 应用程序。最近我想出了一个场景,当我连接到 CarPlay 并从移动设备上杀死应用程序时,我仍然可以在 CarPlay 设备上看到应用程序处于活动状态。因此,当用户从移动设备的后台杀死应用程序时,有任何方法可以从 CarPlay 单元关闭应用程序。当从移动设备中杀死应用程序时,Spotify 正在从 CarPlay 单元中关闭应用程序。

【问题讨论】:

CarPlay 应用程序不应再运行(尤其是如果您仍在使用 MediaPlayer 框架)。 Spotify 还在 CarPlay 最近运行的应用程序上显示应用程序图标,但如果您点击它,它会重新启动应用程序。 【参考方案1】:

当我创建一个测试 CarPlay 应用程序并在模拟器上运行它时,它的 CarPlay 场景会在手机上关闭主场景后自动关闭。因此,我不确定该建议是否有效。

无论如何,建议是:

    收听SceneDelegate.sceneDidDisconnectAppDelegate.application(_:didDiscardSceneSessions:) 使用 NotificationCenter 发送自定义通知,让 CarPlay 场景知道主场景已关闭 使用UIApplication.requestSceneSessionDestruction 请求关闭 CarPlay 场景

【讨论】:

感谢您的回答。对于 CarPlay,我没有遵循基于场景的 CarPlay 实施方法,而是使用 MPPlayableContentManager 在 Car 上呈现内容。我在每次应用启动时执行 CarPlay 代码。关闭主场景后是否还需要关闭 CarPlay 场景?

以上是关于CarPlay:从 Spotify 等移动设备的后台杀死应用程序时,如何从 CarPlay 装置关闭应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

从移动浏览器打开原生 Spotify 应用程序

跨平台移动订阅(Android + iOS)[关闭]

应用程序未安装在真正的 CarPlay 设备上

HTML5 <audio> 中断移动音乐(Spotify,...)

将 Spotify SDK 与 Android 集成

从 Xcode 12 CarPlay 模拟器启动时,CarPlay 停车应用程序崩溃