我有一个广播接收器,它响应重复的 Alarmanager 广播。广播接收器的对象是在另一个类中创建的,但我需要广播接收器的 Onreceive 方法来调用创建对象的类中的方法。
因此,尝试使这一点更清楚。B 类是广播接收器。在 A 类内部,我实例化了 B 类的一个对象。但是 OnRecieve 方法需要对 A 类的公共方法进行分类。
顺便说一句,A 类是 Mainactivity 类。
我正在考虑尝试在 B 类的设置中将 Runnable 对象作为参数传递,但我不完全确定如何实现它。
public class TimerBroadcastReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context arg0, Intent arg1) {
CalcDisplay(true);
}
public void setTimer(Context context)
{
AlarmManager am = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, MainActivity.class);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent, 0);
am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 1000 * 60, pi);
}
public void cancelTimer(Context context)
{
Intent intent = new Intent(context, MainActivity.class);
PendingIntent Sender = PendingIntent.getBroadcast(context, 0, intent, 0);
AlarmManager am = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
am.cancel(Sender);
}
}