示例#1
0
 public void OnStatusChanged(string provider, [GeneratedEnum] Availability status, Bundle extras)
 {
     if (status.Equals(Availability.Available))
     {
         if (Disponibilidade != GPSDisponibilidadeEnum.Disponivel)
         {
             MensagemUtils.notificar(5, "Radar+", "Sinal de GPS encontrado!", audio: "sinal_gps_encontrado");
             Disponibilidade = GPSDisponibilidadeEnum.Disponivel;
         }
     }
     else if (status.Equals(Availability.OutOfService))
     {
         if (Disponibilidade != GPSDisponibilidadeEnum.ForaDoAr)
         {
             MensagemUtils.notificar(5, "Radar+", "Sinal de GPS fora do ar!", audio: "sinal_gps_fora_do_ar");
             Disponibilidade = GPSDisponibilidadeEnum.ForaDoAr;
         }
     }
     else if (status.Equals(Availability.TemporarilyUnavailable))
     {
         if (Disponibilidade != GPSDisponibilidadeEnum.IndisponivelTemporariamente)
         {
             MensagemUtils.notificar(5, "Radar+", "Sinal de GPS fora do ar!", audio: "sinal_gps_perdido");
             Disponibilidade = GPSDisponibilidadeEnum.IndisponivelTemporariamente;
         }
     }
 }
示例#2
0
        private static void avisarRadar(LocalizacaoInfo local, RadarInfo radar)
        {
            var regraAviso = new AvisoSonoroBLL();

            RadarBLL.RadarAtual = radar;
            string mensagem = "Tem um radar a frente, diminua para " + radar.Velocidade.ToString() + "km/h!";

            MensagemUtils.notificar(RADAR_ID, "Radar Club", mensagem, radar.Velocidade);
            if (PreferenciaUtils.BeepAviso)
            {
                regraAviso.play(PreferenciaUtils.SomAlarme);
            }
            if (PreferenciaUtils.VibrarAlerta)
            {
                int tempo = PreferenciaUtils.TempoDuracaoVibracao;
                if (tempo <= 0)
                {
                    tempo = 1;
                }
                tempo = tempo * 1000;
                MensagemUtils.vibrar(tempo);
            }
            if (PreferenciaUtils.HabilitarVoz)
            {
                int distancia = arredondarDistancia(local.Distancia);
                if (distancia != DistanciaOld)
                {
                    regraAviso.play(RadarTipoEnum.RadarFixo, radar.Velocidade, distancia);
                    DistanciaOld = distancia;
                }
            }
        }
        protected override void inicializarComponente()
        {
            base.inicializarComponente();

            foreach (var item in _SomAlarme)
            {
                var alarmeSwitch = new AlarmeSwitch {
                    Style     = EstiloUtils.Popup.CheckBox,
                    SomAlarme = item.Key
                };
                alarmeSwitch.Toggled += (sender, e) =>
                {
                    var alSwitch = (AlarmeSwitch)sender;
                    if (alSwitch.IsToggled)
                    {
                        foreach (var s in _Controls)
                        {
                            if (alSwitch.SomAlarme != s.Key)
                            {
                                s.Value.IsToggled = false;
                            }
                        }
                        PreferenciaUtils.SomAlarme = alSwitch.SomAlarme;
                        var regraAviso = new AvisoSonoroBLL();
                        if (PreferenciaUtils.CanalAudio == AudioCanalEnum.Notificacao)
                        {
                            string arquivoSom = regraAviso.pegarArquivo(alSwitch.SomAlarme);
                            MensagemUtils.notificar(104, "Radar+", "Reproduzindo som de alarme para escolha!", audio: arquivoSom);
                        }
                        else
                        {
                            regraAviso.play(alSwitch.SomAlarme);
                        }
                    }
                    else
                    {
                        bool marcado = false;
                        foreach (var s in _Controls)
                        {
                            if (s.Value.IsToggled)
                            {
                                marcado = true;
                                break;
                            }
                        }
                        if (!marcado)
                        {
                            alSwitch.IsToggled = true;
                        }
                    }
                };
                _Controls.Add(item.Key, alarmeSwitch);
            }
        }
示例#4
0
        private static void avisarRadar(LocalizacaoInfo local, RadarInfo radar)
        {
            var regraAviso = new AvisoSonoroBLL();

            RadarBLL.RadarAtual = radar;
            string titulo   = "Radar+";
            string mensagem = "Tem um radar a frente, diminua para " + radar.Velocidade.ToString() + "km/h!";

            if (PreferenciaUtils.VibrarAlerta)
            {
                int tempo = PreferenciaUtils.TempoDuracaoVibracao;
                if (tempo <= 0)
                {
                    tempo = 1;
                }
                tempo = tempo * 1000;
                MensagemUtils.vibrar(tempo);
            }
            if (PreferenciaUtils.HabilitarVoz)
            {
                MensagemUtils.notificar(RADAR_ID, titulo, mensagem, velocidade: radar.Velocidade);
                int distancia = arredondarDistancia(local.Distancia);
                regraAviso.play(radar.Tipo, radar.Velocidade, distancia);
                DistanciaOld = distancia;
            }
            else
            {
                if (PreferenciaUtils.CanalAudio == AudioCanalEnum.Notificacao)
                {
                    if (PreferenciaUtils.BeepAviso)
                    {
                        string arquivoAlarme = regraAviso.pegarArquivo(PreferenciaUtils.SomAlarme);
                        MensagemUtils.notificar(RADAR_ID, titulo, mensagem, audio: arquivoAlarme, velocidade: radar.Velocidade);
                    }
                    else
                    {
                        MensagemUtils.notificar(RADAR_ID, titulo, mensagem, velocidade: radar.Velocidade);
                    }
                }
                else
                {
                    MensagemUtils.notificar(RADAR_ID, titulo, mensagem, velocidade: radar.Velocidade);
                    if (PreferenciaUtils.BeepAviso)
                    {
                        regraAviso.play(PreferenciaUtils.SomAlarme);
                    }
                }
            }
        }