我已经使用广播接收器与警报管理器每60秒击中web服务,似乎它的工作正常,当我在不同类中使用我的广播接收器时,但它没有调用当我声明一个接收器在我的活动我的广播接收器没有收到
我的代码如下
public static void startAlarm(Context context) {
Intent locationAlarm = new Intent(context, GetLocation.class);
AlarmManager alarms = (AlarmManager) context
.getSystemService(Context.ALARM_SERVICE);
Calendar updateTime = Calendar.getInstance();
PendingIntent recurringAlarm = PendingIntent.getBroadcast(context, 0,
locationAlarm, PendingIntent.FLAG_CANCEL_CURRENT);
alarms.setRepeating(AlarmManager.RTC_WAKEUP,
updateTime.getTimeInMillis() + 500, UPDATE_INTERVAL,
recurringAlarm);
}
广播接收器:
public class GetLocation extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
LogUtil.d("Started Service");
}
}
我的清单文件:
<receiver android:name="com.sample.sample.listeners$GetLocation" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
好心纠正我的错误。我的开始服务方法从未叫过
如果你要注册一个接收器是一个内部类中体现你的活动,它需要一个'公共静态class',它的'name'属性就像'“.MainActivity $ GetLocation”'。 –
@MikeM。谢谢你的回答是有道理的。让我看看它 – Madhu