wxr
2024-08-06 c2cae389c932a9ab2c03d67d0276376655f26343
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
using System;
using AVFoundation;
using Foundation;
 
namespace Other
{
    public class SoundPlayer
    {
        public AVAudioPlayer player;
 
        private static SoundPlayer _soundPlayer;
        public static SoundPlayer Ins
        {
            get
            {
                if(_soundPlayer == null)
                {
                    _soundPlayer = new SoundPlayer();
                    // 获取音频文件路径
                    var soundUrl = NSUrl.FromFilename("oldphone_mono.wav");
                    // 初始化播放器
                    _soundPlayer.player = AVAudioPlayer.FromUrl(soundUrl);
                    _soundPlayer.player.NumberOfLoops = -1; // 设置为-1表示无限循环
                    _soundPlayer.player.PrepareToPlay();
                }
                return _soundPlayer;
            }
        }
 
        public SoundPlayer()
        {
        }
 
        public void PlaySound()
        {
            try
            {
                if (_soundPlayer.player.Playing)
                {
                    _soundPlayer.player.Stop();
                }
                _soundPlayer.player.Play();
            }
            catch (Exception ex)
            {
 
            }
        }
 
        public void StopSound()
        {
            if (_soundPlayer.player != null)
            {
                _soundPlayer.player.Stop();
                _soundPlayer.player.Dispose();
                _soundPlayer = null;
            }
        }
 
    }
}