我希望我的应用程序发出特定频率和持续时间的哔声。在这个应用程序的 Windows 等效项(用 c# 编写)中,我使用了一个带有函数的 c++ dll
beep(frequency, duration);
这在android中是一样的吗?或者至少我怎样才能将我的 c++ dll 放入项目中?
我不想使用预先构建的 mp3 或系统声音,因为我想让用户选择频率和持续时间。
我希望我的应用程序发出特定频率和持续时间的哔声。在这个应用程序的 Windows 等效项(用 c# 编写)中,我使用了一个带有函数的 c++ dll
beep(frequency, duration);
这在android中是一样的吗?或者至少我怎样才能将我的 c++ dll 放入项目中?
我不想使用预先构建的 mp3 或系统声音,因为我想让用户选择频率和持续时间。
我试过 amine.b 的回答。简而言之,播放响亮的哔声:
ToneGenerator toneG = new ToneGenerator(AudioManager.STREAM_ALARM, 100);
toneG.startTone(ToneGenerator.TONE_CDMA_ALERT_CALL_GUARD, 200);
简单的方法是使用ToneGenerator
类的实例:
// send the tone to the "alarm" stream (classic beeps go there) with 50% volume
ToneGenerator toneG = new ToneGenerator(AudioManager.STREAM_ALARM, 50);
if (val >= taux_max) {
taux_text.setTextColor(warnning_col);
toneG.startTone(ToneGenerator.TONE_CDMA_ALERT_CALL_GUARD, 200); // 200 is duration in ms
}
有关参数的确切含义和生成器的可能配置,ToneGenerator
请参阅文档。AudioManager
如果您想在 android 应用程序中使用您的 C++ 代码,这是可能的。您需要查看 Android NDK,它允许您在 JNI(Java 本机接口)的帮助下使用执行 C++ 代码。