【发布时间】: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