Bluetoothデバイスが範囲外になり、iOSデバイスがスタンバイ(画面ロック)またはアプリがバックグラウンドで最小化されている場合、オーディオサンプルをIonic/Cordova Appで再生しようとしています。バックグラウンド再生は、iOS 10のコードバメディアプラグインでも機能しますか?
私は、Androidデバイス用のオーディオファイルのパスを修正する機能を、Cordova media plugin documentationの例と同様の機能を使用しています:
function getMediaURL(url) {
if(device.platform.toLowerCase() === "android") return "/android_asset/www/" + url;
return url;
};
function soundAlarm() {
var mediaUrl = getMediaURL('sounds/alarm.wav');
alarmSound = new Media(mediaUrl, null,
// error callback
function (err) {
console.log("playAudio():Audio Error: " + angular.toJson(err));
});
alarmSound.play({ playAudioWhenScreenIsLocked : true, numberOfLoops: 3 });
}
アプリケーションはしかし、ときフォアグラウンドにあるとき、これが正常に動作します私は、私は次のエラーを取得する携帯電話をロックしたり、アプリケーションを最小化:
{"message":"","code":4}
Cordova media plugin documentationによると、エラーコード4は
を意味し、再生メソッドに渡す 'playAudioWhenScreenIsLocked'オプションは、私が問題を処理することになっていますが、毎回上記のエラーが発生します。また、このプロパティはデフォルトでtrueに設定されています。
バックグラウンドモードのプラグインを使用したくないのですが、この機能はcordovaメディアプラグインを使用してすぐに使用でき、バックグラウンドモードのプラグインによってApp Storeから拒否される可能性があります。
アプリケーションがバックグラウンドになっているか、デバイスがスタンバイモードになっているときに、誰かがオーディオを起動するのに成功しましたか?
これを今までに把握しましたか?私は今同じ問題に直面している。 –