我发现了很多与此类似的问题,但它们太复杂了(代码太多),至少我认为是这样。
这东西几行代码能搞定吗?我想在 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 - 用于在 10 分钟内触发 Activity 的简单 AlarmManager 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11670580/