Android 如何使用多个唯一ID以精确的间隔设置多个重复报警?

Android 如何使用多个唯一ID以精确的间隔设置多个重复报警?,android,android-intent,android-pendingintent,android-dialog,android-alarms,Android,Android Intent,Android Pendingintent,Android Dialog,Android Alarms,事实上,我需要注册一个用户,为他/她设置两个警报,间隔30分钟4小时。我设置了3到4分钟的测试间隔。我应该使用拨号活动来显示警报以获取一些输入。我面临的问题如下: 当有多个用户并有相应的警报(两者)时,警报显示为分散的 一段时间后,只显示最新的用户警报 即使在一段时间之后,也只会显示两个用户的一个警报 Dialouge活动突然显示设置样式“Theme.AppTheme”的错误 待决意向: 报警接收器: 。 我知道比棒棒糖更高版本的确切或不准确的惊人事实。但我需要解决上面提到的问题。请帮忙 I

事实上,我需要注册一个用户,为他/她设置两个警报,间隔30分钟4小时。我设置了3到4分钟的测试间隔。我应该使用拨号活动来显示警报以获取一些输入。我面临的问题如下:

  • 当有多个用户并有相应的警报(两者)时,警报显示为分散的
  • 一段时间后,只显示最新的用户警报
  • 即使在一段时间之后,也只会显示两个用户的一个警报
  • Dialouge活动突然显示设置样式“Theme.AppTheme”的错误
  • 待决意向:

    报警接收器:

    。 我知道比棒棒糖更高版本的确切或不准确的惊人事实。但我需要解决上面提到的问题。请帮忙

      Intent alarmIntent4 = new Intent(Settings.this, AlarmReceiver.class).putExtra("id", id4);
        PendingIntent pendingIntent4 = PendingIntent.getBroadcast(Settings.this, Integer.parseInt
                        (id + "4"),
                alarmIntent4, 0);
        AlarmManager manager4 = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
        manager4.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
                4 * 60 * 60 * 1000,
                pendingIntent4);
    
        Intent alarmIntent30 = new Intent(Settings.this, AlarmReceiver.class).putExtra("id", id30);
        PendingIntent pendingIntent30 = PendingIntent.getBroadcast(Settings.this, Integer.parseInt
                        (id + "3"),
                alarmIntent30, 0);
        AlarmManager manager30 = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
        manager30.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 30 * 60 * 1000,
                pendingIntent30);
    
      Toast.makeText(context, "I'm running", Toast.LENGTH_SHORT).show();
        Vibrator v = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
        // Vibrate for 500 milliseconds
        v.vibrate(500);
    
        String id = intent.getStringExtra("id");
        Intent i = new Intent(context,DialogActivity.class).putExtra("id",id);
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(i);