无法将方法与 MainActivity 分开 class

Can't separate methods from MainActivity class

创建了新的 Java class,其中尝试实施 AlarmManager class 方法。我想创建用于创建、编辑和删除警报的功能。所有代码都在 MainActivity class.

中时一切正常

新 class 具有传递上下文的构造函数。应用程序构建成功时,警报不起作用。

我在 MainActivity 调用 setShowDataEvent 方法:

AlarmController alarmController = new AlarmController(this);
alarmController.setShowDataEvent(startTime, finishTime);

这里是 AlarmController class:

private final String TAG = "AlarmController";

Context context;
PendingIntent pendingIntent;
AlarmManager mAlarmManager;


public AlarmController(Context context){
    this.context = context;
    this.mAlarmManager = (AlarmManager) context.getSystemService(ALARM_SERVICE);
}

public void setShowDataEvent(long startTime, long finishTime){


    newAlarmIntentData(startTime);
    mAlarmManager.setExact(AlarmManager.RTC, startTime, pendingIntent);

    newAlarmIntentData(finishTime);
    mAlarmManager.setExact(AlarmManager.RTC, finishTime, pendingIntent);
    Log.d(TAG, "setShowDataEvent has been executed");
}

private void newAlarmIntentData(long time){
    Intent intent = new Intent(context, AlarmReceiver.class);
    intent.putExtra("showData", true);
    intent.putExtra("time", time);

    pendingIntent = PendingIntent.getBroadcast(context, 1, intent, PendingIntent.FLAG_ONE_SHOT);
}

AlarmManager 移动到构造函数并重新启动 AndroidStudio 后,一切都开始工作了。我已将相同的数据添加到意图中,所以现在有两个不同的 PendingIntent

intent.setData(Uri.parse("myalarms://" + time));