AndroidAPS/app/src/main/java/info/nightscout/androidaps/utils/ToastUtils.java

39 lines
1.5 KiB
Java
Raw Normal View History

2019-02-26 20:38:27 +01:00
package info.nightscout.androidaps.utils;
2016-06-07 21:48:17 +02:00
import android.content.Context;
import android.media.MediaPlayer;
2016-06-07 21:48:17 +02:00
import android.os.Handler;
import android.os.Looper;
import android.widget.Toast;
2017-08-16 21:37:33 +02:00
import info.nightscout.androidaps.MainApp;
import info.nightscout.androidaps.plugins.bus.RxBus;
2019-02-28 23:16:50 +01:00
import info.nightscout.androidaps.plugins.general.overview.events.EventNewNotification;
import info.nightscout.androidaps.plugins.general.overview.notifications.Notification;
2017-08-16 21:37:33 +02:00
2016-06-07 21:48:17 +02:00
public class ToastUtils {
public static void showToastInUiThread(final Context ctx, final int stringId) {
showToastInUiThread(ctx, MainApp.gs(stringId));
}
public static void showToastInUiThread(final Context ctx, final String string) {
2016-06-07 21:48:17 +02:00
Handler mainThread = new Handler(Looper.getMainLooper());
mainThread.post(() -> Toast.makeText(ctx, string, Toast.LENGTH_SHORT).show());
2016-06-07 21:48:17 +02:00
}
public static void showToastInUiThread(final Context ctx,
final String string, int soundID) {
showToastInUiThread(ctx, string);
playSound(ctx, soundID);
Notification notification = new Notification(Notification.TOAST_ALARM, string, Notification.URGENT);
RxBus.INSTANCE.send(new EventNewNotification(notification));
}
private static void playSound(final Context ctx, final int soundID) {
final MediaPlayer soundMP = MediaPlayer.create(ctx, soundID);
soundMP.start();
soundMP.setOnCompletionListener(MediaPlayer::release);
}
2016-06-07 21:48:17 +02:00
}