我已經使用廣播接收器與警報管理器每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