1

有一个BroadcastReceiver我想在方法PendingIntent内部创建的onReceive

public class MyPushNotificationReceiver extends BroadcastReceiver {
..
    public void onReceive(Context context, Intent intent) {

        // How to start a PendingIntent here?

    }

谷歌的大部分文档都没有在onReceive方法中开始,所以我可以使用任何示例代码吗?

谢谢。

4

1 回答 1

1

在广播接收器中使用未决意图的示例代码请检查

    public class MyScheduleReceiver extends BroadcastReceiver {

// Restart service every 30 minute
private static final long REPEAT_TIME = 1000 * 30 ;

@Override
public void onReceive(Context context, Intent intent) {
    AlarmManager service = (AlarmManager) context
            .getSystemService(Context.ALARM_SERVICE);
    Intent i = new Intent(context, MyStartServiceReceiver.class);
    PendingIntent pending = PendingIntent.getBroadcast(context, 0, i,
            PendingIntent.FLAG_CANCEL_CURRENT);
    Calendar cal = Calendar.getInstance();
    // Start 30 seconds after boot completed
    cal.add(Calendar.SECOND, 30);
    //
    // Fetch every 30 seconds
    // InexactRepeating allows Android to optimize the energy consumption
    service.setInexactRepeating(AlarmManager.RTC_WAKEUP,
            cal.getTimeInMillis(), REPEAT_TIME, pending);

    // service.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(),
    // REPEAT_TIME, pending);

}
     }

这段代码来自vogella ...

于 2012-08-22T10:06:59.377 回答