这是我用来调用活动HomeActivity的代码。但是,即使我把它设置为1分钟,呼叫也不会进行。
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
int minutes = 1;
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
Intent i = new Intent(this, HomeActivity.class);
PendingIntent pi = PendingIntent.getService(this, 0, i, 0);
am.cancel(pi);
if (minutes > 0) {
am.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + mi
> Blockquote
nutes*60, minutes, pi); }
}
答案 0 :(得分:1)
首先,如果您尝试通过AlarmManager
开始活动,则需要使用getActivity()
而不是getService()
来创建PendingIntent
。
其次,AlarmManager
的句点以毫秒为单位,而不是秒。
第三,setInexactRepeating()
是为AlarmManager上的一个预定义时期设计的(例如,INTERVAL_FIFTEEN_MINUTES
)。
答案 1 :(得分:0)
我猜重复间隔应该以毫秒为单位
你期待
Intent i = new Intent(this,HomeActivity.class);开始你的活动?
尝试使用normall并查看它是否会启动您的活动