Java 在安卓系统中,如何在没有while循环的情况下持续监控时间
我正在开发一个应用程序,可以在早上9:15和10:30播放某些声音, 我已经完成了声音部分的播放,但在监控当前android系统的时间时,我面临着一些问题 这就是我正在做的 我有一个数组,其中9:15AM和10:30AM存储为字符串。 当我使用Java Calendar类获取系统的当前时间时Java 在安卓系统中,如何在没有while循环的情况下持续监控时间,java,android,Java,Android,我正在开发一个应用程序,可以在早上9:15和10:30播放某些声音, 我已经完成了声音部分的播放,但在监控当前android系统的时间时,我面临着一些问题 这就是我正在做的 我有一个数组,其中9:15AM和10:30AM存储为字符串。 当我使用Java Calendar类获取系统的当前时间时 Calendar cTime = Calendar.getInstance(); public String currentTime() { String hour = cTime
Calendar cTime = Calendar.getInstance();
public String currentTime() {
String hour = cTime.get(Calendar.HOUR) + "";
String mins = cTime.get(Calendar.MINUTE) + "";
return hour+""+mins+"AM";
}
我用这个代码播放声音
public void playSound() {
MediaPlayer player = MediaPlayer.create(this, R.raw.s);
player.start();
player.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
}
问题是,
如果是早上9:15,我运行应用程序,应用程序将播放声音,或者如果是早上10:30,我运行应用程序,应用程序将播放声音,但这不是我想要的,
我想让我的应用程序一直监控时间,当它是上午9:15或10:30时,无论应用程序是否正在运行,声音都应该播放
我尝试了一种方法,将当前时间与10:30AM或9:30AM进行比较,但它挂断了我的手机,这似乎是一个丑陋的想法。
我想不出任何其他方法来监控时间,请给我一些建议。计划在这些时间点获得控制。计划在这些时间点获得控制。我认为您应该尝试这些代码 使用AlarmManager类来计划和执行您想要执行的操作/操作,而不管android应用程序是否正在运行 但在应用这个概念之前,您应该先了解这个类的更多细节,因为它提供了两种类型的alarm Expead Realtime和Real Time Clock 您必须使用广播接收器来接收意图 如果要使用循环,应该使用比java日历类更好的代码 时间t=新时间; t、 塞托诺 或者更多更好的代码,因为现在您将获得您的用户的当前时区,所以您可以开始了 时间t=新的TimeTime.getCurrentTimezone;
塞托诺 我想你应该试试这些Android API代码 使用AlarmManager类来计划和执行您想要执行的操作/操作,而不管android应用程序是否正在运行 但在应用这个概念之前,您应该先了解这个类的更多细节,因为它提供了两种类型的alarm Expead Realtime和Real Time Clock 您必须使用广播接收器来接收意图 如果要使用循环,应该使用比java日历类更好的代码 时间t=新时间; t、 塞托诺 或者更多更好的代码,因为现在您将获得您的用户的当前时区,所以您可以开始了 时间t=新的TimeTime.getCurrentTimezone; 塞托诺