FireMonkey应用程序中MediaRecorder Android NDK类的GetMaxAmplificate

FireMonkey应用程序中MediaRecorder Android NDK类的GetMaxAmplificate,android,delphi,android-ndk,firemonkey,delphi-xe5,Android,Delphi,Android Ndk,Firemonkey,Delphi Xe5,我想在FireMonkey应用程序中使用来自MediaRecorderAndroid NDK类的getMaxAmplium函数。文档建议在应用程序中使用TAudioCaptureDevice进行音频录制,但它不提供此类功能。我本想为tandroaudiocaptureDevice编写类助手,但它位于FMX.Media.Android单元的实现部分,无法从其他单元访问 问题是为什么TAudioCaptureDevice不提供NDK的全部功能 为什么tandroduadiocaptureDevice

我想在FireMonkey应用程序中使用来自
MediaRecorder
Android NDK类的
getMaxAmplium
函数。文档建议在应用程序中使用
TAudioCaptureDevice
进行音频录制,但它不提供此类功能。我本想为
tandroaudiocaptureDevice
编写类助手,但它位于
FMX.Media.Android
单元的
实现部分,无法从其他单元访问

问题是为什么
TAudioCaptureDevice
不提供NDK的全部功能

为什么
tandroduadiocaptureDevice
在实现部分,所以我不能用我的例程扩展它


因此,似乎我必须为音频录制编写自己的类。

“问题是为什么TAudioCaptureDevice不提供NDK的全部功能?”——因为它寻求作为“音频捕获设备”的最低公分母接口,而不考虑平台。那真的是你的问题吗?是的,那是我的问题。我知道TAudioCaptureDevice应该包含所有平台的通用功能,但为什么TandrodoaudioCaptureDevice在实现部分,我不能为它编写类帮助程序?你不是第一个在FMX源代码中抱怨这种编码风格的人,但是这里的任何人(包括我自己)只能推测原因。也许是为了更容易进行相同版本的更新(DCU兼容性)?或者,也许Embarcadero的某些人真的相信90年代VB风格的“黑匣子”方法?或者,也许FMX发布的匆忙性意味着他们想让FMXAPI发布变得更容易?等等,谢谢克里斯的解释。