【问题标题】:Policy of AudioPlaybackCapture API not workAudioPlaybackCapture API 的策略不起作用
【发布时间】:2021-01-15 14:59:18
【问题描述】:

与 AudioPlaybackCapture API here 列出的一样 为了防止第三方应用和系统应用捕获音频,我们应该

将捕获策略设置为 ALLOW_CAPTURE_BY_NONE。

但系统应用能够录制音频。

更新 1

尝试添加android:allowAudioPlaybackCaputure="false"但没有解决问题

更新 2

尝试更改音频属性

   com.google.android.exoplayer2.audio.AudioAttributes.Builder()
                .setAllowedCapturePolicy(ALLOW_CAPTURE_BY_NONE)
                .setUsage(USAGE_VOICE_COMMUNICATION)
                .build().also {
                    videoController.player?.audioComponent?.setAudioAttributes(it, true)
                }

但没有解决问题

【问题讨论】:

  • 这很有趣。现在正试图理解与此有关的事情。请来这里:github.com/aosp-mirror/platform_frameworks_base/blob/master/…。转到 CAPTURE_MEDIA_OUTPUT 和 CAPTURE_VOICE_COMMUNICATION_OUTPUT。如果您查看这些内容,他们会谈论 ALLOW_CAPTURE_BY_NONE 限制。有趣的是,如果您现在看一下 CAPTURE_AUDIO_OUTPUT,他们不会在那里谈论这个。我想可能是这样 - 你也可能在确认他们仍然可以录制。只是不知道这是否有这个权限。
  • 在播放器完全准备/初始化之前,上面的代码是set。当我在准备好播放器后移动它时,代码运行良好
  • 哦。那么他们实际上不能。凉爽的。感谢回复!

标签: android audio-recording playback


【解决方案1】:

Update 2 有效,但必须在初始化播放器后添加。

【讨论】:

    猜你喜欢
    • 2015-11-14
    • 2013-03-30
    • 2023-04-07
    • 1970-01-01
    • 2021-06-24
    • 2012-04-06
    • 2019-11-30
    • 2013-10-04
    • 1970-01-01
    相关资源
    最近更新 更多