0

有3个班。服务类,执行类,接收类

首先,服务类在“执行类”中执行Amethod

“执行类”中的代码是

Amethod(){
    Intent intent = new Intent();
            intent.setAction("MY_ACTION");
            PendingIntent pi = PendingIntent.getBroadcast( context, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT );
            AlarmManager am = (AlarmManager)context.getSystemService( Context.ALARM_SERVICE );  
            am.cancel(pi);
            if(true){//to repaet every 10 sec.  
            am.set( AlarmManager.RTC_WAKEUP,10000, pi );
    }
}

这个动作将发送给接收者。

if(action.equals("MY_ACTION")){
            Log.d("test","test");
            Amethod();

我想这个“方法”将每 10 秒调用一次。但它每 10 毫秒重复一次,也许方法被调用和调用。

为什么这样有效?请告诉我哪个代码是我的错误。

4

1 回答 1

0

如果你想要一个重复的闹钟,不要这样设置每个闹钟。第一次使用 setRepeating,之后会继续。

于 2013-04-07T01:32:22.903 回答