createNewAudioCache method
Future<bool>
createNewAudioCache({
- required String playerId,
- required String route,
- required AudioInAppType audioInAppType,
Methods Users
Method to add the audio in cache. (Required before you can play).
Implementation
Future<bool> createNewAudioCache({
required String playerId,
required String route,
required AudioInAppType audioInAppType
}) async{
_initialize();
log('createNewAudioCache $playerId', name: _NameLog);
try{
if(audioInAppType == AudioInAppType.determined){
final AudioPlayer _audio = AudioPlayer(playerId: playerId,);
await _audio.setVolume(0.0);
await _audio.setSource(AssetSource(route));
await _audio.setReleaseMode(ReleaseMode.stop);
if(Platform.isIOS){
await _audio.resume();
await _audio.stop();
}
await _audio.setVolume(1.0);
await _audio.setPlayerMode(PlayerMode.lowLatency);
_audioCacheMap[playerId] = _audio;
if(!_audioBackgroundCacheList.contains(playerId)){
_audioBackgroundCacheList.add(playerId);
}
}
if(audioInAppType == AudioInAppType.background){
final AudioPlayer _audio = AudioPlayer(playerId: playerId,);
await _audio.setVolume(0.0);
await _audio.setSource(AssetSource(route));
if(Platform.isIOS){
await _audio.resume();
await _audio.stop();
}
await _audio.setVolume(1.0);
await _audio.setReleaseMode(ReleaseMode.loop);
_audioBackgroundCacheMap[playerId] = _audio;
if(!_audioBackgroundCacheList.contains(playerId)){
_audioBackgroundCacheList.add(playerId);
}
}
/*if(audioInAppType == AudioInAppType.determined){
await _audio.setPlayerMode(PlayerMode.lowLatency);
_audioCacheMap[playerId] = _audio;
}
if(audioInAppType == AudioInAppType.background){
}*/
_audioCacheType[playerId] = audioInAppType;
} catch(e){
log('ERROR', name: _NameLog);
log(e.toString(), name: _NameLog);
return false;
}
return true;
}