2015-11-12 47 views
0

我在Android的初學者,簡單的運行在mainActivity報警經理與此代碼:
爲什麼不殺死android中的鬧鐘管理器?

Intent intent = new Intent(testSendWithFood.this, AlarmReciever.class); 
         intent.putExtra("key", "Alert"); 
         //PendingIntent pendingIntent = PendingIntent.getBroadcast(this.getApplicationContext(), 0, intent, 0); 
         PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(), 0, intent, 0); 
         AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); 
         Calendar calendar = Calendar.getInstance(); 
         alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, 10, 40 * 1000, pendingIntent); 


,我想在另一個活動殺死報警經理與此代碼:

Intent intent = new Intent(this, AlarmReciever.class); 
       PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 1253, intent, 0); 
       AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); 
       alarmManager.cancel(pendingIntent); 


但是如此警報管理器不會殺死!,爲什麼?謝謝。

回答

2

掛起的意圖必須相同。所以,如果你改變的意圖ID到1253當您創建的意圖,然後使用相同的取消掛起的意圖,從而改變

PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(),0, intent, 0); 

PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(), 1253, intent, 0); 
+0

您可以發佈我的代碼? – user3671271

+0

我們在那裏:)給它一個去 –

+0

這是工作我的朋友感謝您的幫助,但什麼是1253?這個意圖的ID? – user3671271