Ионный 4: bgImage не отображается при потоковом аудиозаписи

#ionic-framework #ionic4 #ionic-native

#ионный фреймворк #ionic4 #ионный-родной

Вопрос:

Я пытаюсь создать приложение с использованием ionic 4, которое в основном просто передает источник звука с удаленного сервера. Все работает, но я по-прежнему получаю черный экран, хотя я использую bgImage в StreamAudioOptions. Мое изображение bg находится в src/assets/bg.png

Я попробовал следующие ссылки на изображение:

 /assets/bg.png
assets/bg.png
./assets/bg.png
../../assets/bg.png
  

Вот мой код:

 import { StreamingMedia, StreamingAudioOptions } from '@ionic-native/streaming-media/ngx/';

playAudio() {
    this.platform.ready().then(() => {
      if (this.platform.is("cordova")) 
      {
        let options : StreamingAudioOptions = {
          bgImage: "/assets/bg.png",
          bgColor: "#fff",
          bgImageScale: "stretch",
          successCallback: () => 
          {
            console.log("Successfully played audio");
          },
          errorCallback: (e) => 
          {
            console.log(e);
          }
        };
        this.streaming.playAudio(this.mp3.url, options);
      } 
      else 
      {
        console.log("Must be on a mobile device to play!");
      }
  });
}
  

Любая помощь приветствуется. Спасибо!

Ответ №1:

Я исправил это, указав ссылку как «www /assets /bg.png»;

 import { StreamingMedia, StreamingAudioOptions } from '@ionic-native/streaming-media/ngx/';

playAudio() {
    this.platform.ready().then(() => {
      if (this.platform.is("cordova")) 
      {
        let options : StreamingAudioOptions = {
          bgImage: "www/assets/bg.png",
          bgImageScale: "stretch",
          successCallback: () => 
          {
            console.log("Successfully played audio");
          },
          errorCallback: (e) => 
          {
            console.log(e);
          }
        };
        this.streaming.playAudio(this.mp3.url, options);
      } 
      else 
      {
        console.log("Must be on a mobile device to play!");
      }
  });
}