【问题标题】:Create reminder in android app在安卓应用中创建提醒
【发布时间】:2011-10-06 15:42:23
【问题描述】:

我正在尝试在我的应用中创建每周提醒。为此,我正在使用 AlarmManager。 这是生成警报的代码

pendingIntent = PendingIntent.getBroadcast(SettingsActivity.this, 1234567, new Intent(SettingsActivity.this, WeeklyReminder.class), 0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);                  
Calendar calendar = Calendar.getInstance();       
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.SECOND, 30);
long updateFreq = 30*1000;//24*60*60*1000;
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), updateFreq, pendingIntent);

这是扩展广播的每周剩余类

public class WeeklyReminder extends BroadcastReceiver
{

    @Override
    public void onReceive(Context context, Intent intent) 
    {
        // TODO Auto-generated method stub
        try
        {
            System.out.println("Alarm Initiated");
            Toast.makeText(context, "Recieved Alarm", Toast.LENGTH_SHORT).show();
        } 
        catch (Exception e) 
        {
            Toast.makeText(context, "There was an error somewhere, but we still received an alarm", Toast.LENGTH_SHORT).show();
            e.printStackTrace();
        }
    }

}

在 androidmanifest.xml 我在标签之前有这个条目

<receiver  android:name="WeeklyReminder">

我希望即使在应用关闭时也能调用提醒。但现在什么都没有发生 这是正确的做法吗? 谢谢

【问题讨论】:

    标签: java android broadcastreceiver android-intent alarmmanager


    【解决方案1】:

    我解决了这个问题,并将它提供给将来可能会遇到同样问题的人。 在 androidmanifest 文件中,我缺少“。”即,我使用的是“WeeklyReminder”而不是“.WeeklyReminder”

    所以正确的输入是

    <receiver  android:name=".WeeklyReminder">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-23
      • 1970-01-01
      相关资源
      最近更新 更多