【发布时间】:2023-03-27 23:08:01
【问题描述】:
我正在尝试播放本地存储的音频文件。我正在使用Xam.Plugin.SimpleAudioPlayer 播放音频。对于 UWP 和 Android,分别将 Build Action 设置为 Content 和 Android Asset 的文件添加到 Assets 文件夹中。
我的代码:
private void PlayAudio()
{
try
{
var stream = GetStreamFromFile("audio.mp3");
var audio = Plugin.SimpleAudioPlayer.CrossSimpleAudioPlayer.Current;
audio.Load(stream);
audio.Play();
}
catch (Exception e)
{
Debug.WriteLine("exception:>>" + e);
}
}
Stream GetStreamFromFile(string filename)
{
var assembly = typeof(App).GetTypeInfo().Assembly;
var stream = assembly.GetManifestResourceStream("AudioPlay." + filename);
return stream;
}
但是在 android 和 UWP 中出现异常,没有在 IOS 中检查。
Android 异常:
[0:] 异常:>>System.NullReferenceException:对象引用未设置为对象的实例。 在 C:\dev\open\Xamarin-Plugins\SimpleAudioPlayer\SimpleAudioPlayer\Plugin.SimpleAudioPlayer.Android\SimpleAudioPlayerImplementation.cs:100 中的 Plugin.SimpleAudioPlayer.SimpleAudioPlayerImplementation.Load (System.IO.Stream audioStream) [0x00050] 在 F:\AudioPlay\AudioPlay\AudioPlay\MainPage.xaml.cs:63 中的 AudioPlay.MainPage.PlayAudio () [0x00014]
我正在使用 .mp3 文件。我在这个实现中遗漏了什么吗?请帮我解决这个问题?
【问题讨论】:
标签: audio xamarin.forms