android :-Alarm-manager funktioniert nicht
In meinem code alarm manger funktioniert nicht.Rest meiner Anwendung gut funktioniert.Bitte Lesen Sie auch meinen code.
Intent myIntent = new Intent(getApplicationContext(), AndroidAlarmService.class);
myIntent.putExtra("class", "home");
PendingIntent pendingIntent = PendingIntent.getService(this, 0,myIntent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,System.currentTimeMillis(),6000,pendingIntent);
und meinem android-AlarmService-Klasse: -
public class AndroidAlarmService extends BroadcastReceiver implements URLs{
public void onReceive(Context context, Intent intent) {
//TODO Auto-generated method stub
System.out.println("BroadCast\n");
String name=intent.getStringExtra("class");
if(name.equals("home")){
Intent homeIn=new Intent(context,Home.class);
context.startActivity(homeIn);
}
}
}
in der manifest habe ich dies getan;
<receiver android:name=".AndroidAlarmService" android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE"></action>
</intent-filter>
</receiver>
Warum es nicht funktioniert??
- hast du add-Berechtigung in Ihrer xml-Manifestdatei. Es Erfordert die READ_PHONE_STATE-Berechtigung.
- ja über die application-tag....
- Es sollte nicht über den application-tag ist, sondern gekapselt in den tag.... So etwas wie
<application ..... <receiver put your data here></receiver></application>
- noch nichts passiert..
- Ich bemerkte ein weiteres problem. Überprüfen Sie meine Antwort unten.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bekam ich die Antwort.Ich machte folgenden änderungen:
In meinem AndroidAlarmService Klasse:
Ich hatte das gleiche problem, bis ich herausgefunden hatte, dass ich meine Broadcast-Receiver auf ein anderes Paket, nicht die Allgemeine.
Einfach geändert:
für:
Haben Sie versucht, die änderung der
Haben Sie versucht, die änderung der 6000 etwas anderes? Es scheint, dass Sie alles andere richtig.
EDIT:
Stellen Sie sicher, dass die Read_phone_state-Berechtigung in Ihrem manifest.