public async Task PlayNotificationDefaultSound() { await Task.Run(() => { // Music enabled? if (!MusicOn) { return; } if (Interlocked.Read(ref _estoySonando) != 0) { return; } Interlocked.Increment(ref _estoySonando); if (_ringtone == null) { Uri urlToNotification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); _ringtone = RingtoneManager.GetRingtone(MainApplication.CurrentContext, urlToNotification); } _ringtone.Play(); Interlocked.Decrement(ref _estoySonando); }); }
public override void OnReceive(Context context, Intent intent) { Vibrator vibrator = (Vibrator)context.GetSystemService(Context.VibratorService); vibrator.Vibrate(2000); Notification notification = new Notification.Builder(context) .SetContentTitle("Будильник!!") .SetSmallIcon(Resource.Drawable.IcDialogAlert) .SetContentText("Вставай!").Build(); NotificationManager manager = (NotificationManager)context.GetSystemService(Context.NotificationService); notification.Flags = NotificationFlags.AutoCancel; manager.Notify(0, notification); Android.Net.Uri uri = RingtoneManager.GetDefaultUri(RingtoneType.Alarm); Ringtone r = RingtoneManager.GetRingtone(context, uri); r.Play(); var Page = (App)Xamarin.Forms.Application.Current; var MainPage = (MainPage)Page.MainPage; MainPage.UpdateToogles(); }
public void startRingTone() { if (mRingtonePlayer != null && mRingtonePlayer.IsPlaying) { ringRef++; return; } if (mRingtonePlayer == null && mContext != null) { try { mRingtonePlayer = RingtoneManager.GetRingtone(mContext, RingtoneManager.GetDefaultUri(RingtoneType.Ringtone)); } catch (Java.Lang.Exception e) { Console.WriteLine("startRingTone: {0} ", e.ToString()); return; } } if (mRingtonePlayer != null) { lock (mRingtonePlayer) { ringRef++; mRingtonePlayer.Play(); } } }
public void PlayNitificationTone() { Android.Net.Uri notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); Ringtone r = RingtoneManager.GetRingtone(this, notification); r.Play(); }
public override void OnReceive(Context context, Intent intent) { switch (ResultCode) { case Result.Ok: { try { Android.Net.Uri notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); Ringtone r = RingtoneManager.GetRingtone(context, notification); r.Play(); } catch (Exception e) { } Toast.MakeText(Application.Context, "SMS delivered", ToastLength.Long).Show(); break; } case Result.Canceled: { Toast.MakeText(Application.Context, "SMS not delivered", ToastLength.Long).Show(); break; } } }
protected override void OnActivityResult(int requestCode, Result resultCode, Android.Content.Intent data) { switch (requestCode) { case _pickSoundRequestId: if (resultCode == Result.Ok) { var uri = data.GetParcelableExtra(RingtoneManager.ExtraRingtonePickedUri); var ringtone = RingtoneManager.GetRingtone(this, Android.Net.Uri.Parse(uri.ToString())); _soundPref.Summary = ringtone.GetTitle(this); PreferenceManager.GetDefaultSharedPreferences(this).Edit().PutString(SoundSettingKey, uri.ToString()).Commit(); GoogleAnalyticsManager.ReportEvent(GACategory.SettingsScreen, GAAction.Click, "new ringtone is set"); } break; default: if (_billingManager != null) { _billingManager.OnActivityResult(requestCode, resultCode, data); } base.OnActivityResult(requestCode, resultCode, data); break; } }
public void PlayExclusiveNativeSound(NativeSoundData nativeSoundData, float volume = 1.0F) { StopExclusiveNativeSound(); Android.Net.Uri uri = Android.Net.Uri.Parse((nativeSoundData.Intern ? MediaStore.Audio.Media.InternalContentUri : MediaStore.Audio.Media.ExternalContentUri).ToString() + "/" + nativeSoundData.ID); if (nativeSoundData.ID == "") { uri = Android.Net.Uri.Parse(nativeSoundData.Data); } Ringtone rt = RingtoneManager.GetRingtone(global::Android.App.Application.Context, uri); if (rt != null) { rt.AudioAttributes = new AudioAttributes.Builder() .SetUsage(AudioUsageKind.Alarm) .SetContentType(AudioContentType.Music) .Build(); rt.Looping = true; rt.Volume = volume; rt.Play(); exclusiveRingtone = rt; } }
public void Beep(int count) { Android.Net.Uri ringtone = RingtoneManager.GetActualDefaultRingtoneUri(Context, RingtoneType.Notification); Ringtone notification = RingtoneManager.GetRingtone(Context, ringtone); // If phone is not set to silent mode if (notification != null) { for (int i = 0; i < count; ++i) { notification.Play(); long timeout = 5000; while (notification.IsPlaying && (timeout > 0)) { timeout = timeout - 100; try { Thread.Sleep(100); } catch (InterruptedException e) { } } } } }
private void SetBinding() { var bindingSet = this.CreateBindingSet <SettingsView, SettingsViewModel>(); bindingSet.Bind(HoursList) .For(v => v.ItemsSource) .To(vm => vm.HoursList); bindingSet.Bind(addHour) .For(nameof(View.Click)) .To(vm => vm.AddHour); bindingSet.Bind(soundLabel) .For(v => v.Text) .To(vm => vm.RingUri) .WithConversion(new InlineValueConverter <string, string>((arg) => { var uri = Android.Net.Uri.Parse(arg); Ringtone ringtone = RingtoneManager.GetRingtone(this, uri); return(RingtoneManager.IsDefault(uri) ? "Default" : ringtone.GetTitle(this)); })); bindingSet.Bind(this.snooze) .For(v => v.Text) .To(vm => vm.SnoozeMinutes) .WithConversion(new InlineValueConverter <int, string>(arg => Humanizer.TimeSpanHumanizeExtensions.Humanize(TimeSpan.FromMinutes(arg), maxUnit: Humanizer.Localisation.TimeUnit.Minute, minUnit: Humanizer.Localisation.TimeUnit.Minute))); bindingSet.Bind(this.window) .For(v => v.Text) .To(vm => vm.WindowHours) .WithConversion(new InlineValueConverter <int, string>(arg => $"+/- {Humanizer.TimeSpanHumanizeExtensions.Humanize(TimeSpan.FromHours(arg), maxUnit: Humanizer.Localisation.TimeUnit.Hour, minUnit: Humanizer.Localisation.TimeUnit.Hour)}")); bindingSet.Apply(); }
public void PlayAudio(bool play) { if (_Alarm == null) { var uri = RingtoneManager.GetDefaultUri(RingtoneType.Alarm); _Alarm = RingtoneManager.GetRingtone(global::Android.App.Application.Context, uri); _Timer = new System.Timers.Timer(); _Timer.Interval = 2000; _Timer.AutoReset = false; _Timer.Elapsed += _Timer_Elapsed; } if (play && !_Alarm.IsPlaying) { AccelerometerOld = null; GyroscopeMin = null; GyroscopeMax = null; OrientationMin = null; OrientationMax = null; _Alarm.Play(); _Timer.Start(); } else if (!play && _Alarm.IsPlaying) { _Alarm.Stop(); } }
public Ringer(Context ApplicationContext) { if (ringtone == null) { ringtone = RingtoneManager.GetRingtone(ApplicationContext, RingtoneManager.GetDefaultUri(RingtoneType.Ringtone)); } }
public override void OnReceive(Context context, Intent intent) { var message = intent.GetStringExtra("message"); var title = intent.GetStringExtra("title"); var notIntent = new Intent(context, typeof(MainActivity)); var contentIntent = PendingIntent.GetActivity(context, 0, notIntent, PendingIntentFlags.CancelCurrent); Uri ring_uri = RingtoneManager.GetActualDefaultRingtoneUri(context, RingtoneType.Ringtone); Ringtone r = RingtoneManager.GetRingtone(context, ring_uri); //r.Play(); mytts = new TextToSpeech_Android(); Intent checkttsIntent = new Intent(); checkttsIntent.SetAction(TextToSpeech.Engine.ActionCheckTtsData); mytts.Speak(message); //var manager = NotificationManagerCompat.From(context); //var style = new NotificationCompat.BigTextStyle(); //style.BigText(message); }
private void StartSound(String audio_path) { // Play as a system sound Ringtone swingRing = RingtoneManager.GetRingtone(ApplicationContext, Android.Net.Uri.Parse(audio_path)); swingRing.AudioAttributes = new AudioAttributes.Builder().SetFlags(AudioFlags.None).SetLegacyStreamType(Android.Media.Stream.System).Build(); swingRing.Play(); }
public RingTone() { Android.Net.Uri alert = RingtoneManager.GetDefaultUri(RingtoneType.Alarm); context = Android.App.Application.Context; ringTone = RingtoneManager.GetRingtone(context, alert); vibrator = (Vibrator)context.GetSystemService(Context.VibratorService); audiomanager = (AudioManager)context.GetSystemService(Context.AudioService); }
public override void OnFinish() { inputField.Text = "0:00"; Android.Net.Uri notificationUri = RingtoneManager.GetDefaultUri(RingtoneType.Notification); Ringtone tone = RingtoneManager.GetRingtone(context, notificationUri); tone.Play(); }
//protected override void OnCreate(Bundle savedInstanceState) - Original VS code //Xamarin.Essentials.Platform.Init(this, bundle); - code from MS documentation protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); // - Original VS code //Xamarin.Essentials.Platform.Init(this, bundle); // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); btnVB_On = FindViewById <Button>(Resource.Id.btnVB_On); btnVB_Off = FindViewById <Button>(Resource.Id.btnVB_Off); btnScreen2 = FindViewById <Button>(Resource.Id.btnScreen2); btnAlarm_On = FindViewById <Button>(Resource.Id.btnAlarm_On); btnAlarm_Off = FindViewById <Button>(Resource.Id.btnAlarm_Off); btnVB_On.Click += BtnVB_On_Click; btnVB_Off.Click += BtnVB_Off_Click; btnScreen2.Click += BtnScreen2_Click; btnAlarm_On.Click += btnAlarm_On_Click; btnAlarm_Off.Click += BtnAlarm_Off_Click; ringer = RingtoneManager.GetRingtone(ApplicationContext, RingtoneManager.GetDefaultUri(RingtoneType.Alarm)); Intent intent = new Intent(this, typeof(Screen2Activity)); const int pendindingIntentId = 0; PendingIntent pendingIntent = PendingIntent.GetActivity(this, pendindingIntentId, intent, PendingIntentFlags.OneShot); // instantiate builder and set notification elements NotificationCompat.Builder builder = new NotificationCompat.Builder(this) //Notification.Builder builder = new Notification.Builder(this) .SetContentIntent(pendingIntent) .SetContentTitle("My 1st Notification") .SetContentText("Here is the content from my new notification.") .SetSmallIcon(Resource.Drawable.ic_home_black_24dp) .SetVisibility(NotificationCompat.VisibilityPublic) .SetSound(RingtoneManager.GetDefaultUri(RingtoneType.Alarm)) // ? not obsolete in NotificationCompat !! .SetPriority(NotificationCompat.PriorityMax) ; // build notification Notification notification = builder.Build(); // get the notification manager NotificationManager notificationManager = GetSystemService(Context.NotificationService) as NotificationManager; // publish the notification const int notificationId = 0; notificationManager.Notify(notificationId, notification); }
public void Play() { //TODO: Implement some form of enum. var notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); Ringtone r = RingtoneManager.GetRingtone(CurrentActivity, notification); r.Play(); }
public static void Play() { try { Android.Net.Uri notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); Ringtone r = RingtoneManager.GetRingtone(Application.Context, notification); r.Play(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } }
private void BtnAlarm_Click(object sender, System.EventArgs e) { try { Android.Net.Uri alarm = RingtoneManager.GetDefaultUri(RingtoneType.Alarm); Ringtone r = RingtoneManager.GetRingtone(this, alarm); r.Play(); } catch (Exception ex) { Toast.MakeText(this, ex.Message, ToastLength.Long).Show(); } }
protected void soundNotificationDefault() { try { var notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); var r = RingtoneManager.GetRingtone(this, notification); r.Play(); } catch (FeatureNotSupportedException e) { Console.WriteLine(e); } }
void SendNotification(string title, string messageBody, IDictionary <string, string> data) { Device.BeginInvokeOnMainThread(() => { Xamarin.Forms.MessagingCenter.Send(new MobileBMKG.MessagingCenterAlert { Title = title, Message = messageBody, Cancel = "Ok", OnCompleted = complete }, "alaram"); }); var context = MainActivity.Instance; Android.Net.Uri soundUri = Android.Net.Uri.Parse("android.resource://" + "com.stimik1011.sirinesunami/" + Resource.Raw.tsunami); NotifyBroadcastReceived.ringtone = NotifyBroadcastReceived.ringtone ?? RingtoneManager.GetRingtone(context, soundUri); if (!NotifyBroadcastReceived.ringtone.IsPlaying) { NotifyBroadcastReceived.ringtone.Play(); } /* Xamarin.Forms.MessagingCenter.Send(new MobileBMKG.MessagingCenterAlert { Title = title, Message = messageBody, Cancel = "Ok" }, "message"); * var bigStyle = new NotificationCompat.BigTextStyle().BigText(messageBody); * // Create a PendingIntent; we're only using one PendingIntent (ID = 0): * var context = MainActivity.Instance; * NotificationManager notificationManager = context.GetSystemService(Context.NotificationService) as NotificationManager; * Android.Net.Uri soundUri = Android.Net.Uri.Parse("android.resource://" + "com.stimik1011.sirinesunami/" + Resource.Raw.tsunami); * NotificationCompat.Builder builder = new NotificationCompat.Builder(context, MainActivity.CHANNEL_ID) * // .SetContentIntent(pendingIntent) * .SetContentTitle(title) * .SetContentText("Sirine Tsunami") * .SetAutoCancel(false) * .SetStyle(bigStyle) * .SetSound(soundUri) * .SetPriority(NotificationCompat.PriorityMax) * .SetSmallIcon(Resource.Drawable.icontsunami); * * if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Lollipop) * { * builder.SetVisibility(NotificationCompat.VisibilityPublic); * } * * Intent intent = new Intent(Intent.ActionView, Android.Net.Uri.Parse("http://inatews.bmkg.go.id/terkini.php")); * PendingIntent pendingIntent = PendingIntent.GetActivity(context, MainActivity.NOTIFICATION_ID, intent, PendingIntentFlags.UpdateCurrent); * * Intent buttonIntent = new Intent(context, typeof(DissmisService)); * * buttonIntent.PutExtra("notificationId", MainActivity.CHANNEL_ID); * PendingIntent dismissIntent = PendingIntent.GetBroadcast(context, MainActivity.NOTIFICATION_ID, buttonIntent, PendingIntentFlags.CancelCurrent); * * builder.AddAction(Resource.Drawable.abc_ic_menu_overflow_material, "VIEW", pendingIntent); * builder.AddAction(Resource.Drawable.abc_ic_menu_cut_mtrl_alpha, "DISMISS", dismissIntent); * notificationManager.Notify(MainActivity.NOTIFICATION_ID, builder.Build());*/ }
private void complete() { var context = MainActivity.Instance; Android.Net.Uri soundUri = Android.Net.Uri.Parse("android.resource://" + "com.stimik1011.sirinesunami/" + Resource.Raw.tsunami); NotifyBroadcastReceived.ringtone = NotifyBroadcastReceived.ringtone ?? RingtoneManager.GetRingtone(context, soundUri); if (NotifyBroadcastReceived.ringtone.IsPlaying) { NotifyBroadcastReceived.ringtone.Stop(); } }
public void Notify(string title, string message) { Intent startupIntent = new Intent(Android.App.Application.Context, typeof(MainActivity)); startupIntent.PutExtra("title", title.ToString()); startupIntent.PutExtra("message", message.ToString()); TaskStackBuilder stackBuilder = TaskStackBuilder.Create(Android.App.Application.Context); stackBuilder.AddParentStack(Java.Lang.Class.FromType(typeof(MainActivity))); stackBuilder.AddNextIntent(startupIntent); const int pendingIntentId = 0; PendingIntent pendingIntent = stackBuilder.GetPendingIntent(pendingIntentId, PendingIntentFlags.OneShot); Notification.Builder builder = new Notification.Builder(Android.App.Application.Context) .SetContentTitle(title) .SetContentText(message) .SetContentIntent(pendingIntent) .SetSmallIcon(Resource.Drawable.icon); // Build the notification: Notification notification = builder.Build(); notification.Vibrate = new long[] { 150, 300, 150, 600 }; notification.Flags = NotificationFlags.AutoCancel; try { Android.Net.Uri song = RingtoneManager.GetDefaultUri(RingtoneType.Notification); var play = RingtoneManager.GetRingtone(Android.App.Application.Context, song); play.Play(); } catch (Exception ex) { } // Get the notification manager: NotificationManager notificationManager = Android.App.Application.Context.GetSystemService(Context.NotificationService) as NotificationManager; // Publish the notification: const int notificationId = 0; notificationManager.Notify(notificationId, notification); }
public string[,] GetRingtones() { RingtoneManager ringtoneManager = new RingtoneManager(context); string[,] uris = new string[ringtoneManager.Cursor.Count, 2]; for (int i = 0; i < ringtoneManager.Cursor.Count; i++) { uris[i, 0] = ringtoneManager.GetRingtoneUri(i).ToString(); uris[i, 1] = ringtoneManager.GetRingtone(ringtoneManager.GetRingtonePosition(ringtoneManager.GetRingtoneUri(i))).GetTitle(context); } return(uris); }
private void DeclareSwitchEvents() { Switch swTabNDOptionsVibration = FindViewById <Switch>(Resource.Id.swTabNDOptionsVibration); swTabNDOptionsVibration.CheckedChange += delegate(object sender, CompoundButton.CheckedChangeEventArgs e) { bool boolchecked = e.IsChecked; // Store Global Value prefs = PreferenceManager.GetDefaultSharedPreferences(this); ISharedPreferencesEditor editor = prefs.Edit(); if (boolchecked) { Vibrator v = (Vibrator)this.GetSystemService(Context.VibratorService); // Make phone vibrate v.Vibrate(1000); editor.PutInt("AlertVibrate", 1); } else { editor.PutInt("AlertVibrate", 0); } editor.Commit(); editor.Apply(); }; Switch swTabNDOptionsAlert = FindViewById <Switch>(Resource.Id.swTabNDOptionsAlert); swTabNDOptionsAlert.CheckedChange += delegate(object sender, CompoundButton.CheckedChangeEventArgs e) { bool boolchecked = e.IsChecked; // Store Global Value prefs = PreferenceManager.GetDefaultSharedPreferences(this); ISharedPreferencesEditor editor = prefs.Edit(); if (boolchecked) { Android.Net.Uri notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); Ringtone r = RingtoneManager.GetRingtone(this, notification); r.Play(); editor.PutInt("AlertTone", 1); } else { editor.PutInt("AlertTone", 0); } editor.Commit(); editor.Apply(); }; }
public void StopSound() { var context = MainActivity.Instance; var soundUri = global::Android.Net.Uri.Parse("android.resource://" + "com.stimik1011.sirinesunami" + "/raw/tsunami"); NotifyBroadcastReceived.ringtone = NotifyBroadcastReceived.ringtone ?? RingtoneManager.GetRingtone(context, soundUri); if (NotifyBroadcastReceived.ringtone.IsPlaying) { NotifyBroadcastReceived.ringtone.Stop(); } }
public void SetNotificationSound() { try { Uri defaultSoundUri = Uri.Parse("android.resource://" + Android.App.Application.Context.PackageName + "/" + Resource.Raw.notifysound); Ringtone r = RingtoneManager.GetRingtone(Android.App.Application.Context, defaultSoundUri); r.Play(); } catch (System.Exception e) { } }
public override void OnReceive(Context context, Intent intent) { Toast.MakeText(context, "Running", ToastLength.Short).Show(); System.Diagnostics.Debug.WriteLine("Running..."); try { Uri notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification); Ringtone tone = RingtoneManager.GetRingtone(Application.Context, notification); tone.Play(); } catch (Error e) { System.Diagnostics.Debug.WriteLine(e.Message); } }
public void PlaySystemSound() { //If the ringer mode is different than "Normal" (2), enables the normal mode. AudioManager am = (AudioManager)Application.Context.GetSystemService(Context.AudioService); if (!am.RingerMode.Equals(2)) { am.RingerMode = RingerMode.Normal; //am.SetVibrateSetting(VibrateType.Ringer, VibrateSetting.On); } Android.Net.Uri uri = RingtoneManager.GetDefaultUri(RingtoneType.Ringtone); rt = RingtoneManager.GetRingtone(MainActivity.instance.ApplicationContext, uri); rt.Play(); }
/// <summary> /// Sets the ringtone path from the user selection /// </summary> /// <param name="requestCode"></param> /// <param name="resultCode"></param> /// <param name="data"></param> protected override void OnActivityResult(int requestCode, Result resultCode, Intent data) { base.OnActivityResult(requestCode, resultCode, data); if (requestCode == 3 && resultCode == Result.Ok) { uriToRingTone = (Android.Net.Uri)data.GetParcelableExtra(RingtoneManager.ExtraRingtonePickedUri); string alarmTitle = RingtoneManager.GetRingtone(this, uriToRingTone).GetTitle(this); if (uriToRingTone != null) { alarmSound.Text = alarmTitle; //Toast.MakeText(this, uriToRingTone.ToString(), ToastLength.Short).Show(); } } }