【问题标题】:iOS 12.2 - Lockscreen controlos missingiOS 12.2 - 缺少锁屏控件
【发布时间】:2019-04-17 10:35:31
【问题描述】:

自从我更新到 ios 12.2 后,锁屏控件停止为我工作,我不知道为什么。它在 ios 12.1 中运行良好

  1. 应用已启用capabilities->Background mores -> Audio
  2. 我设置UIApplication.shared.beginReceivingRemoteControlEvents()
  3. 然后我设置

    MPRemoteCommandCenter.shared().playCommand.isEnabled = true                   
    MPRemoteCommandCenter.shared().pauseCommand.isEnabled = true
    MPRemoteCommandCenter.shared().playCommand.addTarget(self, action:#selector(self.playPlayer))
    MPRemoteCommandCenter.shared().pauseCommand.addTarget(self, action: #selector(self.pausePlayer))
    
  4. 然后AVAudioSession.sharedInstance().setCategory(AVAudioSession.Category.playback) and AVAudioSession.sharedInstance().setActive(true)

我使用AVPlayerAVPlayer 项目。 Locksceen 控件永远不会出现在 ios 12.2 上。知道是什么导致了这个问题吗?谢谢

(我使用 xcode 10.2 和 swift 4.2)

编辑:我发现只有当设备在线时才会发生这种情况。如果我立即玩,锁屏控件会出现,然后在几秒钟内消失。如果我稍后再玩,它们将不会出现。因此,它们似乎在应用启动后几秒钟工作,然后就没有了

编辑 2:现在已修复。问题是由应用程序将本地 html 文件加载到 webview 引起的。与播放完全无关,仅此而已。解决办法是不加载webview

【问题讨论】:

  • “设备在线时”是什么意思?
  • @matt 可以访问互联网(wifi 已打开)
  • 为什么会有不同?你在播放某种流媒体音频吗?
  • @matt 我尝试了本地和远程文件。我弄清楚那是什么。这是因为在应用程序的另一部分我将 html 文件加载到 webview 中!我不知道为什么,但这是个问题
  • 好的,这真的很有趣!您在 web 视图中加载的 html 文件可能有一个音频组件,它作为远程目标(或其他东西)接管。无论如何,这可能对其他人完全有用,所以请不要在问题中回答您自己的问题,而是将答案添加为 answer(是的,这是合法且受鼓励的,并且在 48 小时内您可以甚至接受你自己的答案)。并祝贺您出色的侦探工作。

标签: ios avfoundation avplayer lockscreen


【解决方案1】:

问题是由应用程序将本地 html 文件加载到 UIWebView 引起的。与播放完全无关,仅此而已。解决方法是不加载 UIWebView 而是使用 WKWebView。

here 讨论了类似的问题,但我发现它只是因为我已经知道是什么原因造成的。

【讨论】:

  • 再一次,出色的侦探工作,感谢您添加链接。
【解决方案2】:

我同意 vandzi 的回答。 我们进一步调查并发现在我们的案例中,它是在 Google Mobile Ads 框架中使用 UIWebView 来展示广告。每当广告 HTML 内容有一些与之关联的音频组件时,音频会话就会失去焦点。 附言如上所述,这只发生在 iOS 12.2 及更高版本上。 (我们在不同 iOS 版本的相同测试环境中对此进行了验证。)

更新:现在 Apple 已开始发送警告消息,说明在将应用程序部署到应用商店时不推荐使用 UIWebView。

消息:“ ITMS-90809:不推荐使用的 API - Apple 将停止接受使用 UIWebView API 的应用提交”。 关联: https://forums.developer.apple.com/thread/122114

我们中的一些人可能不会直接或通过某些第三方使用 UIWebview。

【讨论】:

    猜你喜欢
    • 2019-08-29
    • 1970-01-01
    • 2017-12-28
    • 2014-05-14
    • 2023-03-31
    • 2019-05-19
    • 2018-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多