如何在 Cordova 中使用平台预装的铃声?

Posted

技术标签:

【中文标题】如何在 Cordova 中使用平台预装的铃声?【英文标题】:How to use platform's preinstalled ringtone in Cordova? 【发布时间】:2018-11-22 03:32:47 【问题描述】:

我想在 Cordova 的 ios/android 平台使用系统预装的铃声和闹钟。

我使用了 cordova-plugin-native-ringtone,但它只使用预装的通知声音。

如何获取铃声和闹钟列表并使用?

我应该做插件吗?

【问题讨论】:

【参考方案1】:

如果您想获取铃声或闹钟列表,您需要使用第三个可选参数调用getRingtones(仅适用于Android)。以下是铃声示例:

cordova.plugins.NativeRingtones.getRingtone(function(ringtoneList) 
    ringtones = ringtoneList;
,
function(err) 
    alert(err);
, 'ringtone');

如果你想要报警列表,传递'alarm'而不是'ringtone'

【讨论】:

我已经尝试过这个选项('闹钟'和'铃声')。我从“content://media/internal/audio/media/”获得了相同的通知声音列表。但我想使用 file://system/media/audio/rigtones(或警报、通知)(Android 在音频文件夹中有 3 个文件夹。) @Hika 什么设备/安卓版本? 设备是华为p10 lite。版本是7.0。科尔多瓦 8.0,安卓平台 6.4.0。我的设备中也存在 3 个 Android 文件夹。【参考方案2】:

问题出在 NativeRingtones.java 中,但我认为为时已晚

【讨论】:

正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。 不,这不是解决方案。 pugin 与 "==" 字符串比较以知道您发送的参数是什么,如果警报或其他,所以它有 if 和 else 但总是输入它并且有默认值,我替换了 "= =" 等于

以上是关于如何在 Cordova 中使用平台预装的铃声?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用cordova插件挂钩将文件复制到/res/raw

如何清除适用于 iOS 平台的 Cordova 应用程序的 localStorage

如何将自定义平台添加到 Cordova 或 Phonegap

Xamarin,如何使用 WebView 浏览 lokala 文件,(不是预装文件)

如何仅使用 iOS 源代码更新 Cordova iOS 平台项目

如何将android添加到cordova平台?路径错误?