У меня есть приложение со службой, которое работает полностью в фоновом режиме, но иногда мне нужно изменить содержимое в активности переднего плана, а пока скажем, я хочу показать Toast
.
сначала я проверяю, открыто ли приложение как передний план
public boolean isForeground(String myPackage) {
ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> runningTaskInfo = manager.getRunningTasks(1);
ComponentName componentInfo = runningTaskInfo.get(0).topActivity;
return componentInfo.getPackageName().equals(myPackage);
}
затем я хочу знать, какова текущая активность
String PKG_Name = componentInfo.getPackageName();
, это даст мне имя, но я хочу получить объект Activity
, чтобы сделать что-то вроде этого:
activity.runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(activity, "Hello", Toast.LENGTH_SHORT).show();
}
});
как я могу это сделать? если это невозможно, есть ли способ отправить сигнал или сообщение службе, чтобы сообщить об этом?