我发现了许多与此类似的问题,但是它们太复杂了(代码太多),至少在我看来。

可以用几行代码完成此操作吗?我想在10分钟内(例如)触发一项 Activity 。谢谢你。

最佳答案

设置10分钟闹钟(假设)使用此代码

 AlarmManager alarmMgr = (AlarmManager)getSystemService(ALARM_SERVICE);
 Intent intent = new Intent(this, ShortTimeEntryReceiver.class);
 PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0,  intent, PendingIntent.FLAG_UPDATE_CURRENT);
 alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),10*60*1000, pendingIntent);

开始 Activity
public class ShortTimeEntryReceiver extends BroadcastReceiver{


@Override
public void onReceive(Context context, Intent intent) {

 try {
         Bundle bundle = intent.getExtras();
         String message = bundle.getString("alarm_message");

         // Your activity name
         Intent newIntent = new Intent(context, ReminderPopupMessage.class);
         newIntent.putExtra("alarm_message", message);
         newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
         context.startActivity(newIntent);
        } catch (Exception e) {
         e.printStackTrace();

        }
}
}

在 list 文件中添加以下内容
 <receiver android:name=".ShortTimeEntryReceiver"
                      android:enabled="true"
                      android:process=":remote">
            </receiver>

关于java - 简单的AlarmManager示例,可在10分钟内触发 Activity ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11670580/

10-12 04:00